import { CodexDispatchJournal, type CodexDispatchEvidence, type CodexDispatchRequest, type CodexDispatchScope, type CodexDispatchWaitReason } from './team-codex-dispatch-journal.js'; export interface CodexNativeDispatchPort { /** Read-only, no navigation, focus change or draft modification. */ inspect(request: CodexDispatchRequest): Promise; /** * Serial native operation. Verify exact thread, empty draft/attachments, user inactivity and focus. * Call canSubmit immediately before staging and pressing; never press Steer. Do not return until * native work has stopped, and never retry a press. Return NEW correlated evidence or null. */ submit(request: CodexDispatchRequest, canSubmit: () => Promise): Promise; } export interface CodexDispatchAuthority { /** Host resolves current login + team membership + local task binding afresh, not from client text. */ isCurrent(request: CodexDispatchRequest): Promise; } /** Not wired to the host until an independently authorized native adapter is available. */ export declare class CodexDispatchExecutor { private readonly journal; private readonly native; private readonly authority; readonly id: `${string}-${string}-${string}-${string}-${string}`; private busy; private generation; constructor(journal: CodexDispatchJournal, native: CodexNativeDispatchPort, authority: CodexDispatchAuthority); /** Synchronous logout/pause fence also invalidates checks already in flight. */ fence(): void; tick(scope: CodexDispatchScope): Promise; } //# sourceMappingURL=team-codex-dispatch.d.ts.map