import * as z from "zod";
import { ClosedEnum } from "../../types/enums.js";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
import { Info, Info$Outbound } from "./info.js";
/**
 * The error message if restore failed for a specific asset.
 */
export declare const ErrorEnum: {
    readonly NoBackup: "no_backup";
    readonly Failed: "failed";
    readonly Unauthorized: "unauthorized";
};
/**
 * The error message if restore failed for a specific asset.
 */
export type ErrorEnum = ClosedEnum<typeof ErrorEnum>;
export type RestoreResponse = {
    /**
     * The error message if restore failed for a specific asset.
     */
    error?: ErrorEnum | undefined;
};
export type RestoreResponseUnion = Info | RestoreResponse;
/** @internal */
export declare const ErrorEnum$inboundSchema: z.ZodNativeEnum<typeof ErrorEnum>;
/** @internal */
export declare const ErrorEnum$outboundSchema: z.ZodNativeEnum<typeof ErrorEnum>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace ErrorEnum$ {
    /** @deprecated use `ErrorEnum$inboundSchema` instead. */
    const inboundSchema: z.ZodNativeEnum<{
        readonly NoBackup: "no_backup";
        readonly Failed: "failed";
        readonly Unauthorized: "unauthorized";
    }>;
    /** @deprecated use `ErrorEnum$outboundSchema` instead. */
    const outboundSchema: z.ZodNativeEnum<{
        readonly NoBackup: "no_backup";
        readonly Failed: "failed";
        readonly Unauthorized: "unauthorized";
    }>;
}
/** @internal */
export declare const RestoreResponse$inboundSchema: z.ZodType<RestoreResponse, z.ZodTypeDef, unknown>;
/** @internal */
export type RestoreResponse$Outbound = {
    error?: string | undefined;
};
/** @internal */
export declare const RestoreResponse$outboundSchema: z.ZodType<RestoreResponse$Outbound, z.ZodTypeDef, RestoreResponse>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace RestoreResponse$ {
    /** @deprecated use `RestoreResponse$inboundSchema` instead. */
    const inboundSchema: z.ZodType<RestoreResponse, z.ZodTypeDef, unknown>;
    /** @deprecated use `RestoreResponse$outboundSchema` instead. */
    const outboundSchema: z.ZodType<RestoreResponse$Outbound, z.ZodTypeDef, RestoreResponse>;
    /** @deprecated use `RestoreResponse$Outbound` instead. */
    type Outbound = RestoreResponse$Outbound;
}
export declare function restoreResponseToJSON(restoreResponse: RestoreResponse): string;
export declare function restoreResponseFromJSON(jsonString: string): SafeParseResult<RestoreResponse, SDKValidationError>;
/** @internal */
export declare const RestoreResponseUnion$inboundSchema: z.ZodType<RestoreResponseUnion, z.ZodTypeDef, unknown>;
/** @internal */
export type RestoreResponseUnion$Outbound = Info$Outbound | RestoreResponse$Outbound;
/** @internal */
export declare const RestoreResponseUnion$outboundSchema: z.ZodType<RestoreResponseUnion$Outbound, z.ZodTypeDef, RestoreResponseUnion>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace RestoreResponseUnion$ {
    /** @deprecated use `RestoreResponseUnion$inboundSchema` instead. */
    const inboundSchema: z.ZodType<RestoreResponseUnion, z.ZodTypeDef, unknown>;
    /** @deprecated use `RestoreResponseUnion$outboundSchema` instead. */
    const outboundSchema: z.ZodType<RestoreResponseUnion$Outbound, z.ZodTypeDef, RestoreResponseUnion>;
    /** @deprecated use `RestoreResponseUnion$Outbound` instead. */
    type Outbound = RestoreResponseUnion$Outbound;
}
export declare function restoreResponseUnionToJSON(restoreResponseUnion: RestoreResponseUnion): string;
export declare function restoreResponseUnionFromJSON(jsonString: string): SafeParseResult<RestoreResponseUnion, SDKValidationError>;
//# sourceMappingURL=restoreresponseunion.d.ts.map