import { z } from "zod";
export declare const WhoAmIResponseSchema: z.ZodObject<{
    workId: z.ZodString;
    cwd: z.ZodString;
    port: z.ZodNumber;
    version: z.ZodString;
}, "strip", z.ZodTypeAny, {
    port: number;
    version: string;
    workId: string;
    cwd: string;
}, {
    port: number;
    version: string;
    workId: string;
    cwd: string;
}>;
export type WhoAmIResponse = z.infer<typeof WhoAmIResponseSchema>;
export declare const SelectTargetSchema: z.ZodDiscriminatedUnion<"kind", [z.ZodObject<{
    kind: z.ZodLiteral<"clip">;
    id: z.ZodString;
}, "strip", z.ZodTypeAny, {
    kind: "clip";
    id: string;
}, {
    kind: "clip";
    id: string;
}>, z.ZodObject<{
    kind: z.ZodLiteral<"track">;
    id: z.ZodString;
}, "strip", z.ZodTypeAny, {
    kind: "track";
    id: string;
}, {
    kind: "track";
    id: string;
}>, z.ZodObject<{
    kind: z.ZodLiteral<"none">;
}, "strip", z.ZodTypeAny, {
    kind: "none";
}, {
    kind: "none";
}>]>;
export declare const SelectRequestSchema: z.ZodObject<{
    target: z.ZodDiscriminatedUnion<"kind", [z.ZodObject<{
        kind: z.ZodLiteral<"clip">;
        id: z.ZodString;
    }, "strip", z.ZodTypeAny, {
        kind: "clip";
        id: string;
    }, {
        kind: "clip";
        id: string;
    }>, z.ZodObject<{
        kind: z.ZodLiteral<"track">;
        id: z.ZodString;
    }, "strip", z.ZodTypeAny, {
        kind: "track";
        id: string;
    }, {
        kind: "track";
        id: string;
    }>, z.ZodObject<{
        kind: z.ZodLiteral<"none">;
    }, "strip", z.ZodTypeAny, {
        kind: "none";
    }, {
        kind: "none";
    }>]>;
}, "strip", z.ZodTypeAny, {
    target: {
        kind: "clip";
        id: string;
    } | {
        kind: "track";
        id: string;
    } | {
        kind: "none";
    };
}, {
    target: {
        kind: "clip";
        id: string;
    } | {
        kind: "track";
        id: string;
    } | {
        kind: "none";
    };
}>;
export type SelectRequest = z.infer<typeof SelectRequestSchema>;
export declare const SeekRequestSchema: z.ZodObject<{
    seconds: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    seconds: number;
}, {
    seconds: number;
}>;
export type SeekRequest = z.infer<typeof SeekRequestSchema>;
export declare const ToastRequestSchema: z.ZodObject<{
    message: z.ZodString;
    kind: z.ZodDefault<z.ZodEnum<["info", "success", "warn", "error"]>>;
    durationMs: z.ZodDefault<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
    message: string;
    kind: "error" | "success" | "info" | "warn";
    durationMs: number;
}, {
    message: string;
    kind?: "error" | "success" | "info" | "warn" | undefined;
    durationMs?: number | undefined;
}>;
export type ToastRequest = z.infer<typeof ToastRequestSchema>;
export declare const ProgressRequestSchema: z.ZodDiscriminatedUnion<"phase", [z.ZodObject<{
    phase: z.ZodLiteral<"start">;
    label: z.ZodString;
    steps: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
    label: string;
    phase: "start";
    steps?: number | undefined;
}, {
    label: string;
    phase: "start";
    steps?: number | undefined;
}>, z.ZodObject<{
    phase: z.ZodLiteral<"step">;
    n: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    phase: "step";
    n: number;
}, {
    phase: "step";
    n: number;
}>, z.ZodObject<{
    phase: z.ZodLiteral<"done">;
}, "strip", z.ZodTypeAny, {
    phase: "done";
}, {
    phase: "done";
}>]>;
export type ProgressRequest = z.infer<typeof ProgressRequestSchema>;
export declare const AskRequestSchema: z.ZodObject<{
    message: z.ZodString;
    kind: z.ZodDefault<z.ZodEnum<["yes-no", "ok-cancel", "input"]>>;
    timeoutMs: z.ZodDefault<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
    message: string;
    kind: "yes-no" | "ok-cancel" | "input";
    timeoutMs: number;
}, {
    message: string;
    kind?: "yes-no" | "ok-cancel" | "input" | undefined;
    timeoutMs?: number | undefined;
}>;
export type AskRequest = z.infer<typeof AskRequestSchema>;
export declare const BridgeOkSchema: <T extends z.ZodTypeAny>(result: T) => z.ZodObject<{
    ok: z.ZodLiteral<true>;
    result: T;
}, "strip", z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
    ok: z.ZodLiteral<true>;
    result: T;
}>, any> extends infer T_1 ? { [k in keyof T_1]: T_1[k]; } : never, z.baseObjectInputType<{
    ok: z.ZodLiteral<true>;
    result: T;
}> extends infer T_2 ? { [k_1 in keyof T_2]: T_2[k_1]; } : never>;
export declare const BridgeErrSchema: z.ZodObject<{
    ok: z.ZodLiteral<false>;
    error: z.ZodString;
    code: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
    error: string;
    ok: false;
    code?: number | undefined;
}, {
    error: string;
    ok: false;
    code?: number | undefined;
}>;
//# sourceMappingURL=schemas.d.ts.map