import type { ConversationBinding, DeliveryPrincipal, ExternalPrincipalKey } from './types.js'; export interface ActiveWebOwnerBindingQuery { databasePath: string; sessionId: string; expectedPrincipal: ExternalPrincipalKey; workspace: string; agentPreset: string; } export interface ActiveWebOwnerBindingSnapshot { readonly binding: Readonly; readonly owner: Readonly; } export type ActiveWebOwnerBindingInspection = Readonly<{ status: 'matched'; snapshot: ActiveWebOwnerBindingSnapshot; }> | Readonly<{ status: 'unavailable' | 'mismatch' | 'busy'; }>; /** * Opens an already-existing Delivery database read-only. It never invokes the Delivery migrator, * creates a database, pairs an owner, reads message content, or acquires a Session lease. */ export declare function inspectActiveWebOwnerBindingLocally(input: ActiveWebOwnerBindingQuery): ActiveWebOwnerBindingInspection; export type ActiveIdleWebOwnerBindingsInspection = Readonly<{ status: 'matched'; snapshots: readonly ActiveWebOwnerBindingSnapshot[]; }> | Readonly<{ status: 'unavailable'; reason: 'invalid-scope' | 'snapshot-unavailable' | 'too-many-sessions'; }>; /** Bounded operator discovery in one read-only snapshot; it creates no sessions or bindings. */ export declare function listActiveIdleWebOwnerBindingsLocally(input: Omit): ActiveIdleWebOwnerBindingsInspection; export declare const activeLarkOwnerBindingsSnapshotProtocol: "assistant-delivery/active-lark-owner-bindings-snapshot/v1"; export interface ActiveLarkOwnerBindingsQuery { databasePath: string; account: string; tenant: string; workspace: string; agentPreset: string; } export interface DeliveryOperatorFileIdentity { readonly device: string; readonly inode: string; readonly size: string; readonly mtimeNs: string; readonly digest: string; } /** Full durable authority metadata for one matching binding; no message content is exposed. */ export interface ActiveLarkOwnerBinding extends Readonly { readonly owner: Readonly; } export interface ActiveLarkOwnerBindingsSnapshot { readonly protocol: typeof activeLarkOwnerBindingsSnapshotProtocol; readonly schemaVersion: 23 | 24 | 25 | 26 | 27; readonly scope: Readonly>; readonly database: DeliveryOperatorFileIdentity; readonly sidecars: Readonly<{ wal: DeliveryOperatorFileIdentity | null; shm: DeliveryOperatorFileIdentity | null; }>; /** Digest of the exact main database and WAL bytes represented by this snapshot. */ readonly storageDigest: string; /** Bounded, binary-id-ordered complete set of exact active owner Lark DM matches. */ readonly bindings: readonly ActiveLarkOwnerBinding[]; /** Canonical SHA-256 consistency digest; this is not an authenticity attestation. */ readonly snapshotDigest: string; } export type ActiveLarkOwnerBindingsSnapshotErrorCode = 'invalid-path' | 'invalid-scope' | 'database-missing' | 'unsafe-path' | 'unsafe-parent' | 'database-busy' | 'schema-unsupported' | 'database-corrupt' | 'database-drift' | 'too-many-bindings'; export declare class ActiveLarkOwnerBindingsSnapshotError extends Error { readonly code: ActiveLarkOwnerBindingsSnapshotErrorCode; constructor(code: ActiveLarkOwnerBindingsSnapshotErrorCode, message: string); } /** * Produces one exact, content-free Lark owner-DM inventory without opening a * writable connection to the source. A temporary private byte-for-byte view * is used when WAL state exists so SQLite cannot update the source WAL index. */ export declare function inspectActiveLarkOwnerBindingsLocally(input: ActiveLarkOwnerBindingsQuery): ActiveLarkOwnerBindingsSnapshot; //# sourceMappingURL=operator-snapshot.d.ts.map