mod action;
mod command;
mod entitlement;
mod license;
mod permission;
mod quota;
mod reserved_document;
mod seat;
mod storage;
mod types;
mod workspace_access;
pub use action::{DocAction, WorkspaceAction, doc_action_catalog, workspace_action_catalog};
pub use command::{
CommandAuthorizationDecision, CommandConstraint, CommandDenialReason, CommandEffect, CommandFacts, CommandPermission,
CommandQuotaFacts, DocLifecycleCommand, DomainCommand, authorize_command,
};
pub use entitlement::{
EntitlementInput, EntitlementInputError, EntitlementTransitionEffect, EntitlementTransitionPlan, PlanAccess,
ValidatedEntitlement, describe_plan, plan_entitlement_transition, resolve_entitlements, validate_entitlement_input,
};
pub use license::{LicenseError, LicenseVerifier, VerifiedLicenseClaims};
pub use permission::{authorize, doc_role_allows};
pub use quota::{QuotaUsage, ReadonlyReason, WorkspaceQuotaState, evaluate_workspace_quota};
pub use reserved_document::{
ReservedDocumentAccessDecision, ReservedDocumentClassification, ReservedDocumentError, UserdataTable,
WorkspaceDatabaseTable, authorize_reserved_document, classify_reserved_document, userdata_document_id,
};
pub use seat::{
InvitationKind, InvitationRole, InvitationStatus, SeatActivationFacts, SeatActivationRequest, SeatAuthority,
SeatDenialReason, SeatMutationIntent, SeatOperationPlan, SeatReservationKind, SeatReviewFacts, SeatReviewRequest,
plan_seat_activation, plan_seat_review_reservation,
};
pub use storage::{
StorageAuthorizationFacts, StorageLedgerFacts, StorageMutationIntent, StorageObjectFacts, StorageReservationDenial,
StorageReservationError, StorageReservationFacts, StorageReservationPlan, StorageReservationRequest, StorageResource,
plan_storage_reservation,
};
pub use types::{
AccessContext, AccessDiagnostic, AccessGrant, AclFacts, AuthorizationDecision, AuthorizationRequest, Decision,
DecisionSource, DenialReason, Deployment, DocAclFacts, DocAuthorizationDecision, DocAuthorizationRequest, DocRole,
EntitlementFact, Limits, Plan, RequestedDocAction, RequestedWorkspaceAction, Rights, TargetType, WorkspaceRole,
};
pub(super) use types::{EntitlementSource, EntitlementStatus, MAX_SEAT_QUANTITY};
pub use workspace_access::{
ByokAccessBasis, ByokAccessContext, ByokAccessDecision, ByokExecution, QuotaSubject, QuotaSubjectBasis,
QuotaSubjectDecision, evaluate_byok_access, resolve_quota_subject,
};