import { type Metadata } from "../common/Metadata.js";
import { type Ref } from "../common/Ref.js";
/** Copyright Super iPaaS Integration LLC, an IBM Company 2024 */
/** The policy sequence related information is captured in the message policy sequence */
export interface PolicySequence {
    kind?: string | undefined;
    /** common metadata to identify a specific asset in the files */
    metadata?: Metadata | undefined;
    spec?: PolicySequence_Spec | undefined;
    kindEnum?: PolicySequence_KindEnums | undefined;
    apiVersion?: string | undefined;
}
/** Kind id supported for policy sequence */
export declare enum PolicySequence_KindEnums {
    PolicySequence = "PolicySequence"
}
/** The Spec is used to define the list of transport, iam, monitoring, routing, request processing, response processing, error handling */
export interface PolicySequence_Spec {
    /** Multiple instances of transport policy can be given */
    transport?: Ref[] | undefined;
    /** Multiple instances of iam policy can be given */
    iam?: Ref[] | undefined;
    /** Multiple instances of monitoring policy can be given */
    monitoring?: Ref[] | undefined;
    /** Multiple instances of routing policy can be given */
    routing?: Ref[] | undefined;
    /**
     * Field 'req_processing' with JSON name 'req-processing' accepts the value of either 'req_processing' or 'req-processing' from the YAML file.
     * If both 'req_processing' and 'req-processing' are specified, the value of 'req-processing' takes priority.
     * Multiple instances of request processing can be given with JSON name "req-processing".
     */
    "req-processing"?: Ref[] | undefined;
    /**
     * Field 'resp_processing' with JSON name 'resp-processing' accepts the value of either 'resp_processing' or 'resp-processing' from the YAML file.
     * If both 'resp_processing' and 'response-processing' are specified, the value of 'resp-processing' takes priority.
     * Single instances of response processing can be given with JSON name "resp-processing".
     */
    "res-processing"?: Ref[] | undefined;
    /**
     * Field 'error_handling' with JSON name 'error-handling' accepts the value of either 'error_handling' or 'error-handling' from the YAML file.
     * If both 'error_handling' and 'error-handling' are specified, the value of 'error-handling' takes priority.
     * Single instances of error handling can be given with JSON name "error-handling".
     */
    "error-handling"?: Ref[] | undefined;
}
//# sourceMappingURL=PolicySeq.d.ts.map