import { IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1StickinessConfig } from "./StickinessConfig.js";
import { ModelData, Model } from "@kubernetes-models/base";
/**
 * ALBTrafficRouting configuration for ALB ingress controller to control traffic routing
 */
export interface IALBTrafficRouting {
    /**
     * AnnotationPrefix has to match the configured annotation prefix on the alb ingress controller
     */
    "annotationPrefix"?: string;
    /**
     * Ingress refers to the name of an `Ingress` resource in the same namespace as the `Rollout`
     */
    "ingress"?: string;
    /**
     * Ingresses refers to the name of an `Ingress` resource in the same namespace as the `Rollout` in a multi ingress scenario
     */
    "ingresses"?: Array<string>;
    /**
     * RootService references the service in the ingress to the controller should add the action to
     */
    "rootService"?: string;
    /**
     * ServicePort refers to the port that the Ingress action should route traffic to
     */
    "servicePort": number;
    /**
     * StickinessConfig refers to the duration-based stickiness of the target groups associated with an `Ingress`
     */
    "stickinessConfig"?: IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1StickinessConfig;
}
/**
 * ALBTrafficRouting configuration for ALB ingress controller to control traffic routing
 */
export declare class ALBTrafficRouting extends Model<IALBTrafficRouting> implements IALBTrafficRouting {
    "annotationPrefix"?: string;
    "ingress"?: string;
    "ingresses"?: Array<string>;
    "rootService"?: string;
    "servicePort": number;
    "stickinessConfig"?: IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1StickinessConfig;
    constructor(data?: ModelData<IALBTrafficRouting>);
}
export type { IALBTrafficRouting as IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1ALBTrafficRouting, ALBTrafficRouting as ComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1ALBTrafficRouting };
