affine_core 0.0.4

AFFiNE primitive core.
Documentation
mod action;
mod command;
mod document_identity;
mod entitlement;
mod license;
mod permission;
mod preview;
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 document_identity::{
  CanonicalDocumentIdentity, DocumentIdentityError, DocumentVariant, canonicalize_document_identity,
};
pub use entitlement::{
  EntitlementInput, EntitlementInputError, EntitlementTransitionEffect, EntitlementTransitionPlan, PlanAccess,
  ValidatedEntitlement, describe_plan, plan_entitlement_transition, resolve_entitlements, validate_entitlement_input,
};
pub use license::{
  LicenseError, LicenseIssuance, LicenseIssuanceError, LicenseIssuer, LicenseVerifier, VerifiedLicenseClaims,
};
pub use permission::{authorize, doc_role_allows};
pub use preview::{
  DocPreviewBasis, DocPreviewDecision, DocPreviewExposure, evaluate_doc_preview, evaluate_workspace_preview,
};
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::{
  STORAGE_RESERVATION_MINUTES, StorageAuthorizationFacts, StorageIntegrityError, StorageLedgerFacts,
  StorageMutationIntent, StorageObjectFacts, StorageReservationDenial, StorageReservationError,
  StorageReservationFacts, StorageReservationPlan, StorageReservationRequest, StorageResource,
  plan_storage_reservation, validate_storage_object,
};
pub use types::{
  AccessContext, AccessDiagnostic, AccessGrant, AclFacts, AuthorizationDecision, AuthorizationRequest, Decision,
  DecisionSource, DenialReason, Deployment, DocAclFacts, DocAuthorizationDecision, DocAuthorizationRequest, DocRole,
  EntitlementFact, EntitlementStatus, Limits, Plan, RequestedDocAction, RequestedWorkspaceAction, Rights, TargetType,
  WorkspaceRole,
};
pub(super) use types::{EntitlementSource, MAX_SEAT_QUANTITY};
pub use workspace_access::{
  ByokAccessBasis, ByokAccessContext, ByokAccessDecision, ByokExecution, QuotaSubject, QuotaSubjectBasis,
  QuotaSubjectDecision, evaluate_byok_access, resolve_quota_subject,
};

#[cfg(test)]
#[path = "../tests/access_control/fixtures.rs"]
mod test_fixtures;