import { ModelData, Model } from "@kubernetes-models/base";
/**
 * CrossNamespaceObjectReference contains enough information to let you locate the
 * typed referenced object at cluster level
 */
export interface ICrossNamespaceObjectReference {
    /**
     * API version of the referent
     */
    "apiVersion"?: string;
    /**
     * Kind of the referent
     */
    "kind": "Bucket" | "GitRepository" | "Kustomization" | "HelmRelease" | "HelmChart" | "HelmRepository" | "ImageRepository" | "ImagePolicy" | "ImageUpdateAutomation" | "OCIRepository";
    /**
     * MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
     * map is equivalent to an element of matchExpressions, whose key field is "key", the
     * operator is "In", and the values array contains only "value". The requirements are ANDed.
     */
    "matchLabels"?: {
        [key: string]: string;
    };
    /**
     * Name of the referent
     */
    "name": string;
    /**
     * Namespace of the referent
     */
    "namespace"?: string;
}
/**
 * CrossNamespaceObjectReference contains enough information to let you locate the
 * typed referenced object at cluster level
 */
export declare class CrossNamespaceObjectReference extends Model<ICrossNamespaceObjectReference> implements ICrossNamespaceObjectReference {
    "apiVersion"?: string;
    "kind": "Bucket" | "GitRepository" | "Kustomization" | "HelmRelease" | "HelmChart" | "HelmRepository" | "ImageRepository" | "ImagePolicy" | "ImageUpdateAutomation" | "OCIRepository";
    "matchLabels"?: {
        [key: string]: string;
    };
    "name": string;
    "namespace"?: string;
    constructor(data?: ModelData<ICrossNamespaceObjectReference>);
}
export type { ICrossNamespaceObjectReference as IComGithubFluxcdNotificationControllerApiV1beta1CrossNamespaceObjectReference, CrossNamespaceObjectReference as ComGithubFluxcdNotificationControllerApiV1beta1CrossNamespaceObjectReference };
