import { z } from 'zod';
export declare const ScmStashKindSchema: z.ZodEnum<{
    branch: "branch";
    transient: "transient";
}>;
export type ScmStashKind = z.infer<typeof ScmStashKindSchema>;
export declare const ScmStashEntrySchema: z.ZodObject<{
    stashRef: z.ZodString;
    kind: z.ZodEnum<{
        branch: "branch";
        transient: "transient";
    }>;
    branch: z.ZodOptional<z.ZodString>;
    createdAt: z.ZodOptional<z.ZodNumber>;
    message: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export type ScmStashEntry = z.infer<typeof ScmStashEntrySchema>;
export declare const ScmStashListRequestSchema: z.ZodObject<{
    cwd: z.ZodOptional<z.ZodString>;
    backendPreference: z.ZodOptional<z.ZodObject<{
        kind: z.ZodLiteral<"prefer">;
        backendId: z.ZodEnum<{
            git: "git";
            sapling: "sapling";
        }>;
    }, z.core.$strip>>;
    includeAll: z.ZodOptional<z.ZodBoolean>;
}, z.core.$strip>;
export type ScmStashListRequest = z.infer<typeof ScmStashListRequestSchema>;
export declare const ScmStashListResponseSchema: z.ZodObject<{
    success: z.ZodBoolean;
    managedStashes: z.ZodOptional<z.ZodArray<z.ZodObject<{
        stashRef: z.ZodString;
        kind: z.ZodEnum<{
            branch: "branch";
            transient: "transient";
        }>;
        branch: z.ZodOptional<z.ZodString>;
        createdAt: z.ZodOptional<z.ZodNumber>;
        message: z.ZodOptional<z.ZodString>;
    }, z.core.$strip>>>;
    managedCount: z.ZodOptional<z.ZodNumber>;
    totalCount: z.ZodOptional<z.ZodNumber>;
    error: z.ZodOptional<z.ZodString>;
    errorCode: z.ZodOptional<z.ZodEnum<{
        INVALID_REQUEST: "INVALID_REQUEST";
        NOT_REPOSITORY: "NOT_REPOSITORY";
        INVALID_PATH: "INVALID_PATH";
        COMMAND_FAILED: "COMMAND_FAILED";
        CHANGE_APPLY_FAILED: "CHANGE_APPLY_FAILED";
        COMMIT_REQUIRED: "COMMIT_REQUIRED";
        CONFLICTING_WORKTREE: "CONFLICTING_WORKTREE";
        REMOTE_AUTH_REQUIRED: "REMOTE_AUTH_REQUIRED";
        REMOTE_UPSTREAM_REQUIRED: "REMOTE_UPSTREAM_REQUIRED";
        REMOTE_NON_FAST_FORWARD: "REMOTE_NON_FAST_FORWARD";
        REMOTE_FF_ONLY_REQUIRED: "REMOTE_FF_ONLY_REQUIRED";
        REMOTE_REJECTED: "REMOTE_REJECTED";
        REMOTE_NOT_FOUND: "REMOTE_NOT_FOUND";
        FEATURE_UNSUPPORTED: "FEATURE_UNSUPPORTED";
        BACKEND_UNAVAILABLE: "BACKEND_UNAVAILABLE";
    }>>;
}, z.core.$strip>;
export type ScmStashListResponse = z.infer<typeof ScmStashListResponseSchema>;
export declare const ScmStashDropRequestSchema: z.ZodObject<{
    cwd: z.ZodOptional<z.ZodString>;
    backendPreference: z.ZodOptional<z.ZodObject<{
        kind: z.ZodLiteral<"prefer">;
        backendId: z.ZodEnum<{
            git: "git";
            sapling: "sapling";
        }>;
    }, z.core.$strip>>;
    stashRef: z.ZodString;
}, z.core.$strip>;
export type ScmStashDropRequest = z.infer<typeof ScmStashDropRequestSchema>;
export declare const ScmStashDropResponseSchema: z.ZodObject<{
    success: z.ZodBoolean;
    stdout: z.ZodOptional<z.ZodString>;
    stderr: z.ZodOptional<z.ZodString>;
    error: z.ZodOptional<z.ZodString>;
    errorCode: z.ZodOptional<z.ZodEnum<{
        INVALID_REQUEST: "INVALID_REQUEST";
        NOT_REPOSITORY: "NOT_REPOSITORY";
        INVALID_PATH: "INVALID_PATH";
        COMMAND_FAILED: "COMMAND_FAILED";
        CHANGE_APPLY_FAILED: "CHANGE_APPLY_FAILED";
        COMMIT_REQUIRED: "COMMIT_REQUIRED";
        CONFLICTING_WORKTREE: "CONFLICTING_WORKTREE";
        REMOTE_AUTH_REQUIRED: "REMOTE_AUTH_REQUIRED";
        REMOTE_UPSTREAM_REQUIRED: "REMOTE_UPSTREAM_REQUIRED";
        REMOTE_NON_FAST_FORWARD: "REMOTE_NON_FAST_FORWARD";
        REMOTE_FF_ONLY_REQUIRED: "REMOTE_FF_ONLY_REQUIRED";
        REMOTE_REJECTED: "REMOTE_REJECTED";
        REMOTE_NOT_FOUND: "REMOTE_NOT_FOUND";
        FEATURE_UNSUPPORTED: "FEATURE_UNSUPPORTED";
        BACKEND_UNAVAILABLE: "BACKEND_UNAVAILABLE";
    }>>;
}, z.core.$strip>;
export type ScmStashDropResponse = z.infer<typeof ScmStashDropResponseSchema>;
export declare const ScmStashPopRequestSchema: z.ZodObject<{
    cwd: z.ZodOptional<z.ZodString>;
    backendPreference: z.ZodOptional<z.ZodObject<{
        kind: z.ZodLiteral<"prefer">;
        backendId: z.ZodEnum<{
            git: "git";
            sapling: "sapling";
        }>;
    }, z.core.$strip>>;
    stashRef: z.ZodString;
}, z.core.$strip>;
export type ScmStashPopRequest = z.infer<typeof ScmStashPopRequestSchema>;
export declare const ScmStashPopResponseSchema: z.ZodObject<{
    success: z.ZodBoolean;
    stdout: z.ZodOptional<z.ZodString>;
    stderr: z.ZodOptional<z.ZodString>;
    error: z.ZodOptional<z.ZodString>;
    errorCode: z.ZodOptional<z.ZodEnum<{
        INVALID_REQUEST: "INVALID_REQUEST";
        NOT_REPOSITORY: "NOT_REPOSITORY";
        INVALID_PATH: "INVALID_PATH";
        COMMAND_FAILED: "COMMAND_FAILED";
        CHANGE_APPLY_FAILED: "CHANGE_APPLY_FAILED";
        COMMIT_REQUIRED: "COMMIT_REQUIRED";
        CONFLICTING_WORKTREE: "CONFLICTING_WORKTREE";
        REMOTE_AUTH_REQUIRED: "REMOTE_AUTH_REQUIRED";
        REMOTE_UPSTREAM_REQUIRED: "REMOTE_UPSTREAM_REQUIRED";
        REMOTE_NON_FAST_FORWARD: "REMOTE_NON_FAST_FORWARD";
        REMOTE_FF_ONLY_REQUIRED: "REMOTE_FF_ONLY_REQUIRED";
        REMOTE_REJECTED: "REMOTE_REJECTED";
        REMOTE_NOT_FOUND: "REMOTE_NOT_FOUND";
        FEATURE_UNSUPPORTED: "FEATURE_UNSUPPORTED";
        BACKEND_UNAVAILABLE: "BACKEND_UNAVAILABLE";
    }>>;
}, z.core.$strip>;
export type ScmStashPopResponse = z.infer<typeof ScmStashPopResponseSchema>;
export declare const ScmStashApplyRequestSchema: z.ZodObject<{
    cwd: z.ZodOptional<z.ZodString>;
    backendPreference: z.ZodOptional<z.ZodObject<{
        kind: z.ZodLiteral<"prefer">;
        backendId: z.ZodEnum<{
            git: "git";
            sapling: "sapling";
        }>;
    }, z.core.$strip>>;
    stashRef: z.ZodString;
}, z.core.$strip>;
export type ScmStashApplyRequest = z.infer<typeof ScmStashApplyRequestSchema>;
export declare const ScmStashApplyResponseSchema: z.ZodObject<{
    success: z.ZodBoolean;
    stdout: z.ZodOptional<z.ZodString>;
    stderr: z.ZodOptional<z.ZodString>;
    error: z.ZodOptional<z.ZodString>;
    errorCode: z.ZodOptional<z.ZodEnum<{
        INVALID_REQUEST: "INVALID_REQUEST";
        NOT_REPOSITORY: "NOT_REPOSITORY";
        INVALID_PATH: "INVALID_PATH";
        COMMAND_FAILED: "COMMAND_FAILED";
        CHANGE_APPLY_FAILED: "CHANGE_APPLY_FAILED";
        COMMIT_REQUIRED: "COMMIT_REQUIRED";
        CONFLICTING_WORKTREE: "CONFLICTING_WORKTREE";
        REMOTE_AUTH_REQUIRED: "REMOTE_AUTH_REQUIRED";
        REMOTE_UPSTREAM_REQUIRED: "REMOTE_UPSTREAM_REQUIRED";
        REMOTE_NON_FAST_FORWARD: "REMOTE_NON_FAST_FORWARD";
        REMOTE_FF_ONLY_REQUIRED: "REMOTE_FF_ONLY_REQUIRED";
        REMOTE_REJECTED: "REMOTE_REJECTED";
        REMOTE_NOT_FOUND: "REMOTE_NOT_FOUND";
        FEATURE_UNSUPPORTED: "FEATURE_UNSUPPORTED";
        BACKEND_UNAVAILABLE: "BACKEND_UNAVAILABLE";
    }>>;
}, z.core.$strip>;
export type ScmStashApplyResponse = z.infer<typeof ScmStashApplyResponseSchema>;
export declare const ScmStashShowRequestSchema: z.ZodObject<{
    cwd: z.ZodOptional<z.ZodString>;
    backendPreference: z.ZodOptional<z.ZodObject<{
        kind: z.ZodLiteral<"prefer">;
        backendId: z.ZodEnum<{
            git: "git";
            sapling: "sapling";
        }>;
    }, z.core.$strip>>;
    stashRef: z.ZodString;
    maxBytes: z.ZodOptional<z.ZodNumber>;
}, z.core.$strip>;
export type ScmStashShowRequest = z.infer<typeof ScmStashShowRequestSchema>;
export declare const ScmStashShowResponseSchema: z.ZodObject<{
    success: z.ZodBoolean;
    diff: z.ZodOptional<z.ZodString>;
    truncated: z.ZodOptional<z.ZodBoolean>;
    error: z.ZodOptional<z.ZodString>;
    errorCode: z.ZodOptional<z.ZodEnum<{
        INVALID_REQUEST: "INVALID_REQUEST";
        NOT_REPOSITORY: "NOT_REPOSITORY";
        INVALID_PATH: "INVALID_PATH";
        COMMAND_FAILED: "COMMAND_FAILED";
        CHANGE_APPLY_FAILED: "CHANGE_APPLY_FAILED";
        COMMIT_REQUIRED: "COMMIT_REQUIRED";
        CONFLICTING_WORKTREE: "CONFLICTING_WORKTREE";
        REMOTE_AUTH_REQUIRED: "REMOTE_AUTH_REQUIRED";
        REMOTE_UPSTREAM_REQUIRED: "REMOTE_UPSTREAM_REQUIRED";
        REMOTE_NON_FAST_FORWARD: "REMOTE_NON_FAST_FORWARD";
        REMOTE_FF_ONLY_REQUIRED: "REMOTE_FF_ONLY_REQUIRED";
        REMOTE_REJECTED: "REMOTE_REJECTED";
        REMOTE_NOT_FOUND: "REMOTE_NOT_FOUND";
        FEATURE_UNSUPPORTED: "FEATURE_UNSUPPORTED";
        BACKEND_UNAVAILABLE: "BACKEND_UNAVAILABLE";
    }>>;
}, z.core.$strip>;
export type ScmStashShowResponse = z.infer<typeof ScmStashShowResponseSchema>;
//# sourceMappingURL=scmStash.d.ts.map