import type { SharedApprovalRecord, SharedSessionRecord } from '../../control-plane/index.js'; import { type DirectTransportServices } from '../foundation-services.js'; import { type OperatorClient, type OperatorControlPlaneSnapshot, type OperatorProvidersSnapshot } from '../operator-client.js'; import { type PeerClient, type PeerClientSnapshot } from '../peer-client.js'; import type { RuntimeServices } from '../services.js'; import type { UiSessionSnapshot, UiTasksSnapshot } from '../ui-read-models.js'; import type { ShellPathService } from '../shell-paths.js'; export { createDirectClientTransport } from './direct-client.js'; export type { DirectClientTransport } from './direct-client.js'; export interface DirectTransportSnapshot { readonly kind: 'direct'; readonly operator: { readonly currentSession: UiSessionSnapshot; readonly tasks: UiTasksSnapshot; readonly approvals: readonly SharedApprovalRecord[]; readonly sessions: readonly SharedSessionRecord[]; readonly controlPlane: OperatorControlPlaneSnapshot; readonly providers: OperatorProvidersSnapshot; readonly shellPaths: ShellPathService; }; readonly peer: PeerClientSnapshot; } export interface DirectTransport { readonly kind: 'direct'; readonly operator: OperatorClient; readonly peer: PeerClient; getOperatorClient(): OperatorClient; getPeerClient(): PeerClient; snapshot(): Promise; } export declare function createDirectTransportFromServices(services: DirectTransportServices): DirectTransport; export declare function createRuntimeDirectTransport(runtimeServices: RuntimeServices): DirectTransport; export declare function createDirectTransport(runtimeServices: RuntimeServices): DirectTransport; //# sourceMappingURL=direct.d.ts.map