import { type Any } from "google-protobuf/google/protobuf/any_pb.js";
import { type Metadata } from "../../common/Metadata.js";
/** Copyright Super iPaaS Integration LLC, an IBM Company 2024 */
/** The Throttling Policy related information is captured in the message ThrottlingPolicy */
export interface ThrottlingPolicy {
    kind?: string | undefined;
    apiVersion?: string | undefined;
    /** common metadata to identify a specific asset in the files */
    metadata?: Metadata | undefined;
    kindEnum?: ThrottlingPolicy_KindEnums | undefined;
    spec?: ThrottlingPolicy_Spec | undefined;
}
/** Kind id supported for Throttling policy */
export declare enum ThrottlingPolicy_KindEnums {
    RateLimiter = "RateLimiter"
}
/** The message specified the information related to the Alert Configuration */
export interface ThrottlingPolicy_AlertConfiguration {
    interval?: string | undefined;
    frequency?: string | undefined;
    message?: string | undefined;
}
/** The Spec is used to define the list of enables, maximum limit, applications, application specific and alert configuration */
export interface ThrottlingPolicy_Spec {
    /** Can be enabled or disabled */
    enabled?: boolean | undefined;
    /** Single instance of maximum limit can be given */
    maxLimit?: number | undefined;
    /** Multiple instances of application can be given */
    applications?: string[] | undefined;
    /** application specific can be enabled or disabled */
    applicationSpecific?: boolean | undefined;
    /**
     * Field 'alert_configuration' with JSON name 'alert-configuration' accepts the value of either 'alert_configuration' or 'alert-configuration' from the YAML file.
     * If both 'alert_configuration' and 'alert-configuration' are specified, the value of 'alert-configuration' takes priority.
     * Multiple instances of alert configuration can be given with JSON name "alert-configuration".
     */
    "alert-configuration"?: ThrottlingPolicy_AlertConfiguration | undefined;
    destinations?: Any[] | undefined;
}
//# sourceMappingURL=ThrottlingPolicy.d.ts.map