import { IComGithubCiliumCiliumPkgK8sSlimK8sApisMetaV1LabelSelector } from "../../meta/v1/LabelSelector.js"; import { ModelData, Model } from "@kubernetes-models/base"; /** * EgressGateway identifies the node that should act as egress gateway for a * given egress Gateway policy. In addition to that it also specifies the * configuration of said node (which egress IP or network interface should be * used to SNAT traffic). */ export interface IEgressGateway { /** * EgressIP is the source IP address that the egress traffic is SNATed * with. * * Example: * When set to "192.168.1.100", matching egress traffic will be * redirected to the node matching the NodeSelector field and SNATed * with IP address 192.168.1.100. * * When none of the Interface or EgressIP fields is specified, the * policy will use the first IPv4 assigned to the interface with the * default route. */ "egressIP"?: string; /** * Interface is the network interface to which the egress IP address * that the traffic is SNATed with is assigned. * * Example: * When set to "eth1", matching egress traffic will be redirected to the * node matching the NodeSelector field and SNATed with the first IPv4 * address assigned to the eth1 interface. * * When none of the Interface or EgressIP fields is specified, the * policy will use the first IPv4 assigned to the interface with the * default route. */ "interface"?: string; /** * This is a label selector which selects the node that should act as * egress gateway for the given policy. * In case multiple nodes are selected, only the first one in the * lexical ordering over the node names will be used. * This field follows standard label selector semantics. */ "nodeSelector": IComGithubCiliumCiliumPkgK8sSlimK8sApisMetaV1LabelSelector; } /** * EgressGateway identifies the node that should act as egress gateway for a * given egress Gateway policy. In addition to that it also specifies the * configuration of said node (which egress IP or network interface should be * used to SNAT traffic). */ export declare class EgressGateway extends Model implements IEgressGateway { "egressIP"?: string; "interface"?: string; "nodeSelector": IComGithubCiliumCiliumPkgK8sSlimK8sApisMetaV1LabelSelector; constructor(data?: ModelData); } export type { IEgressGateway as IComGithubCiliumCiliumPkgK8sApisCiliumIoV2EgressGateway, EgressGateway as ComGithubCiliumCiliumPkgK8sApisCiliumIoV2EgressGateway };