import { IComGithubCiliumCiliumPkgIpamTypesAllocationMap } from "./AllocationMap.js"; import { IComGithubCiliumCiliumPkgIpamTypesOperatorStatus } from "./OperatorStatus.js"; import { IComGithubCiliumCiliumPkgIpamTypesPodCIDRMap } from "./PodCIDRMap.js"; import { IComGithubCiliumCiliumPkgIpamTypesIPReleaseStatus } from "./IPReleaseStatus.js"; import { ModelData, Model } from "@kubernetes-models/base"; /** * IPAMStatus is the IPAM status of a node * * This structure is embedded into v2.CiliumNode */ export interface IIPAMStatus { /** * AssignedStaticIP is the static IP assigned to the node (ex: public Elastic IP address in AWS) */ "assigned-static-ip"?: string; /** * IPv6Used lists all IPv6 addresses out of Spec.IPAM.IPv6Pool which have been * allocated and are in use. */ "ipv6-used"?: IComGithubCiliumCiliumPkgIpamTypesAllocationMap; /** * Operator is the Operator status of the node */ "operator-status"?: IComGithubCiliumCiliumPkgIpamTypesOperatorStatus; /** * PodCIDRs lists the status of each pod CIDR allocated to this node. */ "pod-cidrs"?: IComGithubCiliumCiliumPkgIpamTypesPodCIDRMap; /** * ReleaseIPs tracks the state for every IPv4 address considered for release. * The value can be one of the following strings: * \* marked-for-release : Set by operator as possible candidate for IP * \* ready-for-release : Acknowledged as safe to release by agent * \* do-not-release : IP already in use / not owned by the node. Set by agent * \* released : IP successfully released. Set by operator */ "release-ips"?: { [key: string]: IComGithubCiliumCiliumPkgIpamTypesIPReleaseStatus; }; /** * ReleaseIPv6s tracks the state for every IPv6 address considered for release. * The value can be one of the following strings: * \* marked-for-release : Set by operator as possible candidate for IP * \* ready-for-release : Acknowledged as safe to release by agent * \* do-not-release : IP already in use / not owned by the node. Set by agent * \* released : IP successfully released. Set by operator */ "release-ipv6s"?: { [key: string]: IComGithubCiliumCiliumPkgIpamTypesIPReleaseStatus; }; /** * Used lists all IPv4 addresses out of Spec.IPAM.Pool which have been allocated * and are in use. */ "used"?: IComGithubCiliumCiliumPkgIpamTypesAllocationMap; } /** * IPAMStatus is the IPAM status of a node * * This structure is embedded into v2.CiliumNode */ export declare class IPAMStatus extends Model implements IIPAMStatus { "assigned-static-ip"?: string; "ipv6-used"?: IComGithubCiliumCiliumPkgIpamTypesAllocationMap; "operator-status"?: IComGithubCiliumCiliumPkgIpamTypesOperatorStatus; "pod-cidrs"?: IComGithubCiliumCiliumPkgIpamTypesPodCIDRMap; "release-ips"?: { [key: string]: IComGithubCiliumCiliumPkgIpamTypesIPReleaseStatus; }; "release-ipv6s"?: { [key: string]: IComGithubCiliumCiliumPkgIpamTypesIPReleaseStatus; }; "used"?: IComGithubCiliumCiliumPkgIpamTypesAllocationMap; constructor(data?: ModelData); } export type { IIPAMStatus as IComGithubCiliumCiliumPkgIpamTypesIPAMStatus, IPAMStatus as ComGithubCiliumCiliumPkgIpamTypesIPAMStatus };