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 related information is captured in the message policy */
export interface Policy {
    kind?: string | undefined;
    apiVersion?: string | undefined;
    /** common metadata to identify a specific asset in the files */
    metadata?: Metadata | undefined;
    kindEnum?: Policy_KindEnums | undefined;
    spec?: Policy_Spec | undefined;
}
/** Kind id supported for global policy */
export declare enum Policy_KindEnums {
    GlobalPolicy = "GlobalPolicy"
}
/** The Spec is used to define the list of filter and policy sequences */
export interface Policy_Spec {
    "filter-api-type"?: string[] | undefined;
    "filter-http-methods"?: string[] | undefined;
    /** Single instance of filter can be given */
    "filter-attributes"?: string | undefined;
    /**
     * Field 'policy_seq' with JSON name 'policy-seq' accepts the value of either 'policy_seq' or 'policy-seq' from the YAML file.
     * If both 'policy_seq' and 'policy-seq' are specified, the value of 'policy-seq' takes priority.
     * Multiple instances of policy sequences can be given with JSON name "policy-seq".
     */
    "policy-sequence"?: Ref[] | undefined;
}
//# sourceMappingURL=Policy.d.ts.map