import { ModelData, Model } from "@kubernetes-models/base"; /** * ObjectSelector defines a reference to a Kubernetes object which can be an Elastic resource managed by the operator * or a Secret describing an external Elastic resource not managed by the operator. */ export interface IObjectSelector { /** * Name of an existing Kubernetes object corresponding to an Elastic resource managed by ECK. */ "name"?: string; /** * Namespace of the Kubernetes object. If empty, defaults to the current namespace. */ "namespace"?: string; /** * SecretName is the name of an existing Kubernetes secret that contains connection information for associating an * Elastic resource not managed by the operator. * The referenced secret must contain the following: * - `url`: the URL to reach the Elastic resource * - `username`: the username of the user to be authenticated to the Elastic resource * - `password`: the password of the user to be authenticated to the Elastic resource * - `ca.crt`: the CA certificate in PEM format (optional) * - `api-key`: the key to authenticate against the Elastic resource instead of a username and password (supported only for `elasticsearchRefs` in AgentSpec and in BeatSpec) * This field cannot be used in combination with the other fields name, namespace or serviceName. */ "secretName"?: string; /** * ServiceName is the name of an existing Kubernetes service which is used to make requests to the referenced * object. It has to be in the same namespace as the referenced resource. If left empty, the default HTTP service of * the referenced resource is used. */ "serviceName"?: string; } /** * ObjectSelector defines a reference to a Kubernetes object which can be an Elastic resource managed by the operator * or a Secret describing an external Elastic resource not managed by the operator. */ export declare class ObjectSelector extends Model implements IObjectSelector { "name"?: string; "namespace"?: string; "secretName"?: string; "serviceName"?: string; constructor(data?: ModelData); } export type { IObjectSelector as IComGithubElasticCloudOnK8sV3PkgApisCommonV1ObjectSelector, ObjectSelector as ComGithubElasticCloudOnK8sV3PkgApisCommonV1ObjectSelector };