export declare const PANERELAY_CLI_ADAPTER_PROTOCOL_VERSION: "panerelay.cli-adapter.v1"; export declare const CLI_ADAPTER_MAX_MESSAGE_BYTES: number; export declare const CLI_ADAPTER_MAX_ENVIRONMENT_BYTES: number; export declare const CLI_ADAPTER_MAX_ENVIRONMENT_KEYS = 16; export declare const CLI_ADAPTER_MAX_DOCTOR_CHECKS = 32; export type CliAdapterOperation = 'adapter.manifest' | 'connection.resolve' | 'adapter.doctor'; export type CliAdapterCapability = 'connection.resolve' | 'adapter.doctor'; export type CliAdapterMode = 'direct' | 'extension'; export type CliAdapterConnectionKind = 'direct' | 'cdp-http' | 'cdp-websocket'; export type CliAdapterDoctorStatus = 'ready' | 'degraded' | 'unavailable'; export type CliAdapterDoctorCheckStatus = 'pass' | 'warning' | 'fail'; export type CliAdapterErrorCode = 'invalid-request' | 'incompatible-protocol' | 'unsupported-operation' | 'adapter-unavailable' | 'browser-unavailable' | 'generation-changed' | 'not-ready' | 'busy' | 'timeout' | 'internal-error'; export interface CliAdapterActor { name: string; sessionLabel?: string; } export interface CliAdapterBrowserSelection { browserId: string; generation: string; } export interface CliAdapterManifestRequest { protocol: typeof PANERELAY_CLI_ADAPTER_PROTOCOL_VERSION; requestId: string; operation: 'adapter.manifest'; input: Record; } export interface CliAdapterResolveRequest { protocol: typeof PANERELAY_CLI_ADAPTER_PROTOCOL_VERSION; requestId: string; operation: 'connection.resolve'; input: { mode: CliAdapterMode; actor: CliAdapterActor; browser?: CliAdapterBrowserSelection; }; } export interface CliAdapterDoctorRequest { protocol: typeof PANERELAY_CLI_ADAPTER_PROTOCOL_VERSION; requestId: string; operation: 'adapter.doctor'; input: Record; } export type CliAdapterRequest = CliAdapterManifestRequest | CliAdapterResolveRequest | CliAdapterDoctorRequest; export interface CliAdapterManifest { adapterId: string; name: string; version: string; protocol: typeof PANERELAY_CLI_ADAPTER_PROTOCOL_VERSION; capabilities: CliAdapterCapability[]; modes: CliAdapterMode[]; childEnvironmentKeys: string[]; } export interface CliAdapterResolvedConnection { mode: CliAdapterMode; connection: { kind: CliAdapterConnectionKind; url?: string; }; environment: Record; expiresAt?: string; concurrencyKey?: string; } export interface CliAdapterDoctorCheck { id: string; status: CliAdapterDoctorCheckStatus; message?: string; version?: string; } export interface CliAdapterDoctorResult { status: CliAdapterDoctorStatus; checks: CliAdapterDoctorCheck[]; } export type CliAdapterOperationResult = CliAdapterManifest | CliAdapterResolvedConnection | CliAdapterDoctorResult; export interface CliAdapterSuccessResponse { protocol: typeof PANERELAY_CLI_ADAPTER_PROTOCOL_VERSION; requestId: string; operation: CliAdapterOperation; success: true; result: CliAdapterOperationResult; } export interface CliAdapterFailureResponse { protocol: typeof PANERELAY_CLI_ADAPTER_PROTOCOL_VERSION; requestId: string; operation: CliAdapterOperation; success: false; error: { code: CliAdapterErrorCode; message: string; retryable: boolean; }; } export type CliAdapterResponse = CliAdapterSuccessResponse | CliAdapterFailureResponse; export declare function isSafeCliAdapterEnvironmentKey(value: unknown): value is string; export declare function isCliAdapterRequest(value: unknown): value is CliAdapterRequest; export declare function isCliAdapterManifest(value: unknown): value is CliAdapterManifest; export declare function isCliAdapterResponse(value: unknown): value is CliAdapterResponse; export declare function parseCliAdapterRequest(serialized: string): CliAdapterRequest; export declare function parseCliAdapterResponse(serialized: string): CliAdapterResponse; export declare function serializeCliAdapterMessage(value: CliAdapterRequest | CliAdapterResponse): string; //# sourceMappingURL=cli-adapter.d.ts.map