/**
 * Kubernetes
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * The version of the OpenAPI document: v1.22.2
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */ import { RequestFile } from './models' ; import { V1ObjectReference } from './v1ObjectReference' ; import { V1beta1EndpointConditions } from './v1beta1EndpointConditions' ; import { V1beta1EndpointHints } from './v1beta1EndpointHints' ; /**
* Endpoint represents a single logical \"backend\" implementing a service.
*/ export class V1beta1Endpoint { /**
    * addresses of this endpoint. The contents of this field are interpreted according to the corresponding EndpointSlice addressType field. Consumers must handle different types of addresses in the context of their own capabilities. This must contain at least one address but no more than 100.
    */ 'addresses' : Array < string > ; 'conditions' ? : V1beta1EndpointConditions ; 'hints' ? : V1beta1EndpointHints ; /**
    * hostname of this endpoint. This field may be used by consumers of endpoints to distinguish endpoints from each other (e.g. in DNS names). Multiple endpoints which use the same hostname should be considered fungible (e.g. multiple A values in DNS). Must be lowercase and pass DNS Label (RFC 1123) validation.
    */ 'hostname' ? : string ; /**
    * nodeName represents the name of the Node hosting this endpoint. This can be used to determine endpoints local to a Node. This field can be enabled with the EndpointSliceNodeName feature gate.
    */ 'nodeName' ? : string ; 'targetRef' ? : V1ObjectReference ; /**
    * topology contains arbitrary topology information associated with the endpoint. These key/value pairs must conform with the label format. https://kubernetes.io/docs/concepts/overview/working-with-objects/labels Topology may include a maximum of 16 key/value pairs. This includes, but is not limited to the following well known keys: * kubernetes.io/hostname: the value indicates the hostname of the node   where the endpoint is located. This should match the corresponding   node label. * topology.kubernetes.io/zone: the value indicates the zone where the   endpoint is located. This should match the corresponding node label. * topology.kubernetes.io/region: the value indicates the region where the   endpoint is located. This should match the corresponding node label. This field is deprecated and will be removed in future api versions.
    */ 'topology' ? : { [ key ] : string ; } ; static discriminator : string | undefined = undefined ; static attributeTypeMap : Array < { name : string ; baseName : string ; type : string ; } > = [ { "name" : "addresses" , "baseName" : "addresses" , "type" : "Array<string>" } , { "name" : "conditions" , "baseName" : "conditions" , "type" : "V1beta1EndpointConditions" } , { "name" : "hints" , "baseName" : "hints" , "type" : "V1beta1EndpointHints" } , { "name" : "hostname" , "baseName" : "hostname" , "type" : "string" } , { "name" : "nodeName" , "baseName" : "nodeName" , "type" : "string" } , { "name" : "targetRef" , "baseName" : "targetRef" , "type" : "V1ObjectReference" } , { "name" : "topology" , "baseName" : "topology" , "type" : "{ [key: string]: string; }" } ] ; static getAttributeTypeMap ( ) { return V1beta1Endpoint . attributeTypeMap ; } }