import type { IStorageProvider, ListOptions, ListResult, StorageOptions } from '../../../storage/core/IStorageProvider.js';
import type { RequestContext } from '../../../utils/internal/requestContext.js';
export declare class FileSystemProvider implements IStorageProvider {
    private readonly storagePath;
    constructor(storagePath: string);
    private getTenantPath;
    private getFilePath;
    private buildEnvelope;
    private parseAndValidate;
    get<T>(tenantId: string, key: string, context: RequestContext): Promise<T | null>;
    set(tenantId: string, key: string, value: unknown, context: RequestContext, options?: StorageOptions): Promise<void>;
    delete(tenantId: string, key: string, context: RequestContext): Promise<boolean>;
    private listFilesRecursively;
    list(tenantId: string, prefix: string, context: RequestContext, options?: ListOptions): Promise<ListResult>;
    getMany<T>(tenantId: string, keys: string[], context: RequestContext): Promise<Map<string, T>>;
    setMany(tenantId: string, entries: Map<string, unknown>, context: RequestContext, options?: StorageOptions): Promise<void>;
    deleteMany(tenantId: string, keys: string[], context: RequestContext): Promise<number>;
    clear(tenantId: string, context: RequestContext): Promise<number>;
}
//# sourceMappingURL=fileSystemProvider.d.ts.map