import { IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1IstioDestinationRule } from "./IstioDestinationRule.js";
import { IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1IstioVirtualService } from "./IstioVirtualService.js";
import { ModelData, Model } from "@kubernetes-models/base";
/**
 * IstioTrafficRouting configuration for Istio service mesh to enable fine grain configuration
 */
export interface IIstioTrafficRouting {
    /**
     * DestinationRule references an Istio DestinationRule to modify to shape traffic
     */
    "destinationRule"?: IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1IstioDestinationRule;
    /**
     * VirtualService references an Istio VirtualService to modify to shape traffic
     */
    "virtualService"?: IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1IstioVirtualService;
    /**
     * VirtualServices references a list of Istio VirtualService to modify to shape traffic
     */
    "virtualServices"?: Array<IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1IstioVirtualService>;
}
/**
 * IstioTrafficRouting configuration for Istio service mesh to enable fine grain configuration
 */
export declare class IstioTrafficRouting extends Model<IIstioTrafficRouting> implements IIstioTrafficRouting {
    "destinationRule"?: IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1IstioDestinationRule;
    "virtualService"?: IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1IstioVirtualService;
    "virtualServices"?: Array<IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1IstioVirtualService>;
    constructor(data?: ModelData<IIstioTrafficRouting>);
}
export type { IIstioTrafficRouting as IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1IstioTrafficRouting, IstioTrafficRouting as ComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1IstioTrafficRouting };
