import * as z from "zod";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "./sdkvalidationerror.js";
export type InternalServerErrorResponseImsxCodeMinorField1 = {
    imsxCodeMinorFieldName?: "TargetEndSystem" | undefined;
    imsxCodeMinorFieldValue?: "internal_server_error" | undefined;
};
export type InternalServerErrorResponseImsxCodeMinor = {
    imsxCodeMinorField: Array<InternalServerErrorResponseImsxCodeMinorField1>;
};
export type InternalServerErrorResponse1Data = {
    imsxCodeMajor: "failure";
    imsxSeverity: "error";
    imsxDescription: string;
    imsxCodeMinor: InternalServerErrorResponseImsxCodeMinor;
};
export declare class InternalServerErrorResponse1 extends Error {
    imsxCodeMajor: "failure";
    imsxSeverity: "error";
    imsxDescription: string;
    imsxCodeMinor: InternalServerErrorResponseImsxCodeMinor;
    /** The original data that was passed to this error instance. */
    data$: InternalServerErrorResponse1Data;
    constructor(err: InternalServerErrorResponse1Data);
}
export type InternalServerErrorResponse2Data = {
    imsxCodeMajor: "failure";
    imsxSeverity: "error";
    imsxDescription: string;
    imsxCodeMinor: InternalServerErrorResponseImsxCodeMinor;
};
export declare class InternalServerErrorResponse2 extends Error {
    imsxCodeMajor: "failure";
    imsxSeverity: "error";
    imsxDescription: string;
    imsxCodeMinor: InternalServerErrorResponseImsxCodeMinor;
    /** The original data that was passed to this error instance. */
    data$: InternalServerErrorResponse2Data;
    constructor(err: InternalServerErrorResponse2Data);
}
/** @internal */
export declare const InternalServerErrorResponseImsxCodeMinorField1$inboundSchema: z.ZodType<InternalServerErrorResponseImsxCodeMinorField1, z.ZodTypeDef, unknown>;
/** @internal */
export type InternalServerErrorResponseImsxCodeMinorField1$Outbound = {
    imsx_codeMinorFieldName: "TargetEndSystem";
    imsx_codeMinorFieldValue: "internal_server_error";
};
/** @internal */
export declare const InternalServerErrorResponseImsxCodeMinorField1$outboundSchema: z.ZodType<InternalServerErrorResponseImsxCodeMinorField1$Outbound, z.ZodTypeDef, InternalServerErrorResponseImsxCodeMinorField1>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace InternalServerErrorResponseImsxCodeMinorField1$ {
    /** @deprecated use `InternalServerErrorResponseImsxCodeMinorField1$inboundSchema` instead. */
    const inboundSchema: z.ZodType<InternalServerErrorResponseImsxCodeMinorField1, z.ZodTypeDef, unknown>;
    /** @deprecated use `InternalServerErrorResponseImsxCodeMinorField1$outboundSchema` instead. */
    const outboundSchema: z.ZodType<InternalServerErrorResponseImsxCodeMinorField1$Outbound, z.ZodTypeDef, InternalServerErrorResponseImsxCodeMinorField1>;
    /** @deprecated use `InternalServerErrorResponseImsxCodeMinorField1$Outbound` instead. */
    type Outbound = InternalServerErrorResponseImsxCodeMinorField1$Outbound;
}
export declare function internalServerErrorResponseImsxCodeMinorField1ToJSON(internalServerErrorResponseImsxCodeMinorField1: InternalServerErrorResponseImsxCodeMinorField1): string;
export declare function internalServerErrorResponseImsxCodeMinorField1FromJSON(jsonString: string): SafeParseResult<InternalServerErrorResponseImsxCodeMinorField1, SDKValidationError>;
/** @internal */
export declare const InternalServerErrorResponseImsxCodeMinor$inboundSchema: z.ZodType<InternalServerErrorResponseImsxCodeMinor, z.ZodTypeDef, unknown>;
/** @internal */
export type InternalServerErrorResponseImsxCodeMinor$Outbound = {
    imsx_codeMinorField: Array<InternalServerErrorResponseImsxCodeMinorField1$Outbound>;
};
/** @internal */
export declare const InternalServerErrorResponseImsxCodeMinor$outboundSchema: z.ZodType<InternalServerErrorResponseImsxCodeMinor$Outbound, z.ZodTypeDef, InternalServerErrorResponseImsxCodeMinor>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace InternalServerErrorResponseImsxCodeMinor$ {
    /** @deprecated use `InternalServerErrorResponseImsxCodeMinor$inboundSchema` instead. */
    const inboundSchema: z.ZodType<InternalServerErrorResponseImsxCodeMinor, z.ZodTypeDef, unknown>;
    /** @deprecated use `InternalServerErrorResponseImsxCodeMinor$outboundSchema` instead. */
    const outboundSchema: z.ZodType<InternalServerErrorResponseImsxCodeMinor$Outbound, z.ZodTypeDef, InternalServerErrorResponseImsxCodeMinor>;
    /** @deprecated use `InternalServerErrorResponseImsxCodeMinor$Outbound` instead. */
    type Outbound = InternalServerErrorResponseImsxCodeMinor$Outbound;
}
export declare function internalServerErrorResponseImsxCodeMinorToJSON(internalServerErrorResponseImsxCodeMinor: InternalServerErrorResponseImsxCodeMinor): string;
export declare function internalServerErrorResponseImsxCodeMinorFromJSON(jsonString: string): SafeParseResult<InternalServerErrorResponseImsxCodeMinor, SDKValidationError>;
/** @internal */
export declare const InternalServerErrorResponse1$inboundSchema: z.ZodType<InternalServerErrorResponse1, z.ZodTypeDef, unknown>;
/** @internal */
export type InternalServerErrorResponse1$Outbound = {
    imsx_codeMajor: "failure";
    imsx_severity: "error";
    imsx_description: string;
    imsx_CodeMinor: InternalServerErrorResponseImsxCodeMinor$Outbound;
};
/** @internal */
export declare const InternalServerErrorResponse1$outboundSchema: z.ZodType<InternalServerErrorResponse1$Outbound, z.ZodTypeDef, InternalServerErrorResponse1>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace InternalServerErrorResponse1$ {
    /** @deprecated use `InternalServerErrorResponse1$inboundSchema` instead. */
    const inboundSchema: z.ZodType<InternalServerErrorResponse1, z.ZodTypeDef, unknown>;
    /** @deprecated use `InternalServerErrorResponse1$outboundSchema` instead. */
    const outboundSchema: z.ZodType<InternalServerErrorResponse1$Outbound, z.ZodTypeDef, InternalServerErrorResponse1>;
    /** @deprecated use `InternalServerErrorResponse1$Outbound` instead. */
    type Outbound = InternalServerErrorResponse1$Outbound;
}
/** @internal */
export declare const InternalServerErrorResponse2$inboundSchema: z.ZodType<InternalServerErrorResponse2, z.ZodTypeDef, unknown>;
/** @internal */
export type InternalServerErrorResponse2$Outbound = {
    imsx_codeMajor: "failure";
    imsx_severity: "error";
    imsx_description: string;
    imsx_CodeMinor: InternalServerErrorResponseImsxCodeMinor$Outbound;
};
/** @internal */
export declare const InternalServerErrorResponse2$outboundSchema: z.ZodType<InternalServerErrorResponse2$Outbound, z.ZodTypeDef, InternalServerErrorResponse2>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace InternalServerErrorResponse2$ {
    /** @deprecated use `InternalServerErrorResponse2$inboundSchema` instead. */
    const inboundSchema: z.ZodType<InternalServerErrorResponse2, z.ZodTypeDef, unknown>;
    /** @deprecated use `InternalServerErrorResponse2$outboundSchema` instead. */
    const outboundSchema: z.ZodType<InternalServerErrorResponse2$Outbound, z.ZodTypeDef, InternalServerErrorResponse2>;
    /** @deprecated use `InternalServerErrorResponse2$Outbound` instead. */
    type Outbound = InternalServerErrorResponse2$Outbound;
}
//# sourceMappingURL=internalservererrorresponse1.d.ts.map