import { type Secrets } from '../../../resources/secret/secrets.js';
import { type CoreV1Api } from '@kubernetes/client-node';
import { type NamespaceName } from '../../../../../types/namespace/namespace-name.js';
import { type Optional } from '../../../../../types/index.js';
import { type SecretType } from '../../../resources/secret/secret-type.js';
export declare class K8ClientSecrets implements Secrets {
    private readonly kubeClient;
    constructor(kubeClient: CoreV1Api);
    create(namespace: NamespaceName, name: string, secretType: SecretType, data: Record<string, string>, labels: Optional<Record<string, string>>): Promise<boolean>;
    createOrReplace(namespace: NamespaceName, name: string, secretType: SecretType, data: Record<string, string>, labels: Optional<Record<string, string>>): Promise<boolean>;
    delete(namespace: NamespaceName, name: string): Promise<boolean>;
    replace(namespace: NamespaceName, name: string, secretType: SecretType, data: Record<string, string>, labels: Optional<Record<string, string>>): Promise<boolean>;
    read(namespace: NamespaceName, name: string): Promise<{
        data: Record<string, string>;
        name: string;
        namespace: string;
        type: string;
        labels: Record<string, string>;
    }>;
    list(namespace: NamespaceName, labels?: string[]): Promise<Array<{
        data: Record<string, string>;
        name: string;
        namespace: string;
        type: string;
        labels: Record<string, string>;
    }>>;
    exists(namespace: NamespaceName, name: string): Promise<boolean>;
    private createOrReplaceWithForce;
    private shouldReplace;
}
