import { WEB_BRIDGE_SCHEMA_VERSION, type WebBridgePageSnapshot } from "../contracts/web-bridge.js";
export interface WebBridgeStatusReport {
    ok: boolean;
    command: "web-bridge status";
    checkedAt: string;
    schemaVersion: typeof WEB_BRIDGE_SCHEMA_VERSION;
    enabled: boolean;
    installed: boolean;
    ready: boolean;
    extension: {
        templatePath: string;
        templateExists: boolean;
        manifestPath: string;
    };
    nativeHost: {
        name: string;
        supported: boolean;
        manifestPaths: string[];
        installedPath: string | null;
        command: string;
    };
    mcp: {
        serverName: string;
        command: string;
        args: string[];
        readOnlyDefault: true;
    };
    artifacts: {
        directory: string;
        latestContextPath: string;
        latestContextExists: boolean;
    };
    permissions: {
        readOnlyDefault: true;
        mutationsRequireApproval: true;
        forbiddenData: string[];
    };
    checks: Array<{
        severity: "ok" | "info" | "warn" | "error";
        message: string;
    }>;
}
export interface WebBridgeInstallInstructions {
    ok: boolean;
    command: "web-bridge install-host";
    dryRun: boolean;
    wrote: boolean;
    manifestPath: string | null;
    wrapperPath: string | null;
    manifest: Record<string, unknown> | null;
    instructions: string[];
}
export declare function getOmkPackageRoot(): string;
export declare function getWebBridgeTemplatePath(packageRoot?: string): string;
export declare function getWebBridgeExtensionManifestPath(packageRoot?: string): string;
export declare function getWebBridgeArtifactDir(root?: string): string;
export declare function getLatestWebBridgeContextPath(root?: string): string;
export declare function getNativeHostManifestPaths(home?: string, platform?: NodeJS.Platform): string[];
export declare function getWebBridgeStatus(options?: {
    root?: string;
    packageRoot?: string;
    env?: NodeJS.ProcessEnv;
}): Promise<WebBridgeStatusReport>;
export declare function writeWebBridgePageContext(snapshot: WebBridgePageSnapshot, options?: {
    root?: string;
    runId?: string;
}): Promise<{
    latestPath: string;
    runPath?: string;
    snapshot: WebBridgePageSnapshot;
}>;
export declare function readLatestWebBridgePageContext(root?: string): Promise<WebBridgePageSnapshot | null>;
export declare function buildNativeHostManifest(input: {
    extensionId: string;
    wrapperPath: string;
}): Record<string, unknown>;
export declare function buildInstallHostInstructions(options?: {
    extensionId?: string;
    write?: boolean;
    browser?: "chrome" | "chromium" | "brave";
    root?: string;
    home?: string;
    platform?: NodeJS.Platform;
}): Promise<WebBridgeInstallInstructions>;
