import * as z from "zod";
import { Result as SafeParseResult } from "../../types/fp.js";
import { PowerPathError } from "./powerpatherror.js";
import { SDKValidationError } from "./sdkvalidationerror.js";
export type InternalServerErrorResponseImsxCodeMinorField = {
    imsxCodeMinorFieldName?: "TargetEndSystem" | undefined;
    imsxCodeMinorFieldValue?: "internal_server_error" | undefined;
};
export type InternalServerErrorResponseImsxCodeMinor = {
    imsxCodeMinorField: Array<InternalServerErrorResponseImsxCodeMinorField>;
};
export type InternalServerErrorResponseData = {
    imsxCodeMajor: "failure";
    imsxSeverity: "error";
    imsxDescription: string;
    imsxCodeMinor: InternalServerErrorResponseImsxCodeMinor;
    imsxErrorDetails?: Array<{
        [k: string]: string;
    }> | undefined;
};
export declare class InternalServerErrorResponse extends PowerPathError {
    imsxCodeMajor: "failure";
    imsxSeverity: "error";
    imsxDescription: string;
    imsxCodeMinor: InternalServerErrorResponseImsxCodeMinor;
    imsxErrorDetails?: Array<{
        [k: string]: string;
    }> | undefined;
    /** The original data that was passed to this error instance. */
    data$: InternalServerErrorResponseData;
    constructor(err: InternalServerErrorResponseData, httpMeta: {
        response: Response;
        request: Request;
        body: string;
    });
}
/** @internal */
export declare const InternalServerErrorResponseImsxCodeMinorField$inboundSchema: z.ZodType<InternalServerErrorResponseImsxCodeMinorField, z.ZodTypeDef, unknown>;
/** @internal */
export type InternalServerErrorResponseImsxCodeMinorField$Outbound = {
    imsx_codeMinorFieldName: "TargetEndSystem";
    imsx_codeMinorFieldValue: "internal_server_error";
};
/** @internal */
export declare const InternalServerErrorResponseImsxCodeMinorField$outboundSchema: z.ZodType<InternalServerErrorResponseImsxCodeMinorField$Outbound, z.ZodTypeDef, InternalServerErrorResponseImsxCodeMinorField>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace InternalServerErrorResponseImsxCodeMinorField$ {
    /** @deprecated use `InternalServerErrorResponseImsxCodeMinorField$inboundSchema` instead. */
    const inboundSchema: z.ZodType<InternalServerErrorResponseImsxCodeMinorField, z.ZodTypeDef, unknown>;
    /** @deprecated use `InternalServerErrorResponseImsxCodeMinorField$outboundSchema` instead. */
    const outboundSchema: z.ZodType<InternalServerErrorResponseImsxCodeMinorField$Outbound, z.ZodTypeDef, InternalServerErrorResponseImsxCodeMinorField>;
    /** @deprecated use `InternalServerErrorResponseImsxCodeMinorField$Outbound` instead. */
    type Outbound = InternalServerErrorResponseImsxCodeMinorField$Outbound;
}
export declare function internalServerErrorResponseImsxCodeMinorFieldToJSON(internalServerErrorResponseImsxCodeMinorField: InternalServerErrorResponseImsxCodeMinorField): string;
export declare function internalServerErrorResponseImsxCodeMinorFieldFromJSON(jsonString: string): SafeParseResult<InternalServerErrorResponseImsxCodeMinorField, SDKValidationError>;
/** @internal */
export declare const InternalServerErrorResponseImsxCodeMinor$inboundSchema: z.ZodType<InternalServerErrorResponseImsxCodeMinor, z.ZodTypeDef, unknown>;
/** @internal */
export type InternalServerErrorResponseImsxCodeMinor$Outbound = {
    imsx_codeMinorField: Array<InternalServerErrorResponseImsxCodeMinorField$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 InternalServerErrorResponse$inboundSchema: z.ZodType<InternalServerErrorResponse, z.ZodTypeDef, unknown>;
/** @internal */
export type InternalServerErrorResponse$Outbound = {
    imsx_codeMajor: "failure";
    imsx_severity: "error";
    imsx_description: string;
    imsx_CodeMinor: InternalServerErrorResponseImsxCodeMinor$Outbound;
    imsx_error_details?: Array<{
        [k: string]: string;
    }> | undefined;
};
/** @internal */
export declare const InternalServerErrorResponse$outboundSchema: z.ZodType<InternalServerErrorResponse$Outbound, z.ZodTypeDef, InternalServerErrorResponse>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace InternalServerErrorResponse$ {
    /** @deprecated use `InternalServerErrorResponse$inboundSchema` instead. */
    const inboundSchema: z.ZodType<InternalServerErrorResponse, z.ZodTypeDef, unknown>;
    /** @deprecated use `InternalServerErrorResponse$outboundSchema` instead. */
    const outboundSchema: z.ZodType<InternalServerErrorResponse$Outbound, z.ZodTypeDef, InternalServerErrorResponse>;
    /** @deprecated use `InternalServerErrorResponse$Outbound` instead. */
    type Outbound = InternalServerErrorResponse$Outbound;
}
//# sourceMappingURL=internalservererrorresponse.d.ts.map