import type { HushIdentityName, HushIdentityRecord } from './domain.js'; import type { HushContext, StoreContext } from '../types.js'; import { type HushAuditCommandContext } from './audit.js'; export declare const ACTIVE_IDENTITY_STATE_VERSION = 1; export interface ActiveIdentityStateDocument { version: typeof ACTIVE_IDENTITY_STATE_VERSION; identity: HushIdentityName; updatedAt: string; } export type DeclaredIdentities = ReadonlyArray | Record; export interface SetActiveIdentityOptions { store: StoreContext; identity: HushIdentityName; identities: DeclaredIdentities; command?: HushAuditCommandContext; } export declare function readActiveIdentityState(ctx: HushContext, store: StoreContext): ActiveIdentityStateDocument | null; export declare function getActiveIdentity(ctx: HushContext, store: StoreContext): HushIdentityName | null; export declare function requireActiveIdentity(ctx: HushContext, store: StoreContext, identities: DeclaredIdentities, command?: HushAuditCommandContext): HushIdentityName; export declare function setActiveIdentity(ctx: HushContext, options: SetActiveIdentityOptions): ActiveIdentityStateDocument; //# sourceMappingURL=identity.d.ts.map