kubricate
Version:
A TypeScript framework for building reusable, type-safe Kubernetes infrastructure — without the YAML mess.
30 lines • 1.27 kB
TypeScript
import type { BaseProvider, PreparedEffect, ProviderInjection, SecretInjectionStrategy, SecretValue } from '@kubricate/core';
export interface InMemoryProviderConfig {
name?: string;
}
type SupportedStrategies = 'env';
export declare class InMemoryProvider implements BaseProvider<InMemoryProviderConfig, SupportedStrategies> {
name: string | undefined;
injectes: ProviderInjection[];
readonly allowMerge = true;
readonly secretType = "Kubricate.InMemory";
readonly supportedStrategies: SupportedStrategies[];
readonly targetKind = "Deployment";
config: InMemoryProviderConfig;
constructor(config?: InMemoryProviderConfig);
setInjects(injectes: ProviderInjection[]): void;
getTargetPath(strategy: SecretInjectionStrategy): string;
getInjectionPayload(): unknown;
getEffectIdentifier(effect: PreparedEffect): string;
/**
* Merge provider-level effects into final applyable resources.
* Used to deduplicate (e.g. K8s secret name + ns).
*/
mergeSecrets(effects: PreparedEffect[]): PreparedEffect[];
/**
* Prepare the secret value for in-memory storage.
*/
prepare(name: string, value: SecretValue): PreparedEffect[];
}
export {};
//# sourceMappingURL=InMemoryProvider.d.ts.map