import { type CoreV1Api } from '@kubernetes/client-node';
import { type ConfigMaps } from '../../../resources/config-map/config-maps.js';
import { type NamespaceName } from '../../../../../types/namespace/namespace-name.js';
import { type ConfigMap } from '../../../resources/config-map/config-map.js';
export declare class K8ClientConfigMaps implements ConfigMaps {
    private readonly kubeClient;
    private readonly logger;
    constructor(kubeClient: CoreV1Api);
    create(namespace: NamespaceName, name: string, labels: Record<string, string>, data: Record<string, string>): Promise<boolean>;
    createOrReplace(namespace: NamespaceName, name: string, labels: Record<string, string>, data: Record<string, string>): Promise<boolean>;
    delete(namespace: NamespaceName, name: string): Promise<boolean>;
    read(namespace: NamespaceName, name: string): Promise<ConfigMap>;
    replace(namespace: NamespaceName, name: string, labels: Record<string, string>, data: Record<string, string>): Promise<boolean>;
    exists(namespace: NamespaceName, name: string): Promise<boolean>;
    private createOrReplaceWithForce;
    private shouldReplace;
    list(namespace: NamespaceName, labels: string[]): Promise<ConfigMap[]>;
    listForAllNamespaces(labels: string[]): Promise<ConfigMap[]>;
    update(namespace: NamespaceName, name: string, data: Record<string, string>): Promise<void>;
}
