import type { Context as ClientContext } from '@deepseek-ai/cordis'; import { type HarnessSessions as ISessions } from './harness-session-state.js'; import type { SessionId } from '@deepseek-ai/dsh-session/types'; export declare const inject: string[]; type ComposerBlock = { readonly reason: string; }; type ComposerBlocks = { set(id: SessionId, block: ComposerBlock | undefined): void; storeFor(id: SessionId): { getSnapshot(): ComposerBlock | undefined; subscribe(listener: () => void): () => void; }; }; /** Use the public native composer gate; neither draft nor editor DOM is replaced. */ export declare function lockDisconnectedComposer(sessions: ISessions, connection: { getSnapshot(): string | undefined; subscribe(listener: () => void): () => void; }, blocksFor: (id: SessionId) => ComposerBlocks | undefined): () => void; /** The iframe reads selection through the public DSH store; Arkme owns visibility. */ export declare function apply(ctx: ClientContext): void; export {}; //# sourceMappingURL=harness-session-client.d.ts.map