import type { BleCentralBackend } from './backend-contract/backend.js'; import type { BackendIdentity } from './backend-contract/identity.js'; import type { SerializableRecord } from './backend-contract/primitives.js'; import { type BackendAuthoringDefinition } from './backend-sdk-authoring.js'; import { redactTraceDocument, validateTraceDocument, type DiagnosticTraceDocument, type TraceValidationResult } from './diagnostics/trace-format.js'; export type UnifiedBleCliCommand = 'doctor' | 'capabilities' | 'trace' | 'tck' | 'scenario' | 'init' | 'inspect' | 'support-bundle'; export interface UnifiedBleCliFailure { readonly code: 'cli.argument-invalid' | 'cli.backend-load-failed' | 'cli.backend-invalid' | 'cli.host-unsupported' | 'cli.trace-invalid' | 'cli.execution-failed'; readonly message: string; } export interface UnifiedBleCliResult { readonly ok: boolean; readonly command: UnifiedBleCliCommand | null; readonly data: SerializableRecord | null; readonly failures: readonly UnifiedBleCliFailure[]; } export type CliBackendDefinition = BackendAuthoringDefinition, BleCentralBackend>>; export interface UnifiedBleCliRuntime { readTextFile(path: string): Promise; loadBackendModule(moduleSpecifier: string): Promise; writeTextFile?(path: string, contents: string): Promise; cwd?(): string; } /** * Runs non-interactive, Node-only diagnostics. Consumer commands never select * a radio. Backend-authoring commands require an explicit --backend module. */ export declare function runUnifiedBleCli(argumentsValue: readonly string[], runtime?: UnifiedBleCliRuntime): Promise; export declare function formatUnifiedBleCliResult(result: UnifiedBleCliResult): string; export { redactTraceDocument, validateTraceDocument }; export type { DiagnosticTraceDocument, TraceValidationResult }; export declare function extractRedactedTrace(result: UnifiedBleCliResult): DiagnosticTraceDocument | null; //# sourceMappingURL=cli.d.ts.map