{"version":3,"file":"step-up-model.mjs","names":[],"sources":["../../../src/internal/models/step-up-model.ts"],"sourcesContent":["import type { TableModel as Table, SqlExpression } from \"../table-model\";\nimport type {\n  SessionAuthorityTables,\n  SessionExecution,\n  SessionPendingTables,\n  SignedSessionValidityTables,\n  StatefulSessionTables,\n} from \"./session-model\";\nimport { requiredPendingAuthenticationConstraints } from \"./session-model\";\n\nexport const requiredSessionStepUpConstraints = requiredPendingAuthenticationConstraints;\nexport type RequiredSessionStepUpConstraints = typeof requiredSessionStepUpConstraints;\n\n/** Stateful metadata is decoded from the exact inspected digest's record. No\n * duplicate credentialVersion/authenticatedAt columns or row-version CAS. */\nexport type SessionStepUpSourceTables<\n  Claims,\n  Session extends Table,\n  Tombstone extends Table,\n  NativeSubjectId,\n  NativeSessionId,\n> =\n  | { readonly kind: \"StatelessSigned\" }\n  | ({\n      readonly kind: \"StateAssistedSigned\";\n      readonly constraints: {\n        readonly tombstoneOwner: \"unique(tombstone.moduleId,tombstone.subjectId,tombstone.sessionId)\";\n      };\n    } & SignedSessionValidityTables<Tombstone, NativeSubjectId, NativeSessionId>)\n  | ({\n      readonly kind: \"Stateful\";\n      readonly constraints: { readonly sessionDigest: \"unique(session.digest)\" };\n    } & StatefulSessionTables<Claims, Session, NativeSubjectId, NativeSessionId>);\n\nexport type SessionStepUpMapping<\n  Claims,\n  Subject extends Table,\n  Credential extends Table,\n  Pending extends Table,\n  Session extends Table,\n  Tombstone extends Table,\n  NativeSubjectId,\n  NativeSessionId,\n  Expression extends SqlExpression = SqlExpression,\n> = SessionAuthorityTables<Subject, Credential, NativeSubjectId> &\n  SessionPendingTables<Pending, NativeSubjectId> &\n  SessionExecution<Expression> & {\n    readonly source: SessionStepUpSourceTables<\n      Claims,\n      Session,\n      Tombstone,\n      NativeSubjectId,\n      NativeSessionId\n    >;\n    readonly constraints: RequiredSessionStepUpConstraints;\n  };\n"],"mappings":";;AAUA,MAAa,mCAAmC"}