/**
 * Suite that provides the File System Persistency service.
 *
 * The file system persistence service provides persistency by storing data in SQLite databases on regular or
 * shared filesystem.
 *
 * @packageDocumentation
 */
import { ActorSuite } from '@darlean/base';
import { IConfigEnv } from '@darlean/utils';
export declare const FS_PERSISTENCE_SERVICE = "io.darlean.FsPersistenceService";
export interface IFsPersistenceOptions {
    compartments: IFsPersistenceCompartment[];
}
export interface IFsPersistenceCompartment {
    compartment: string;
    shardCount?: number;
    nodes?: string[];
    basePath?: string;
    subPath?: string;
    maxReaders?: number;
}
export declare function createFsPersistenceSuite(options: IFsPersistenceOptions): ActorSuite;
export interface IFileSystemCompartmentCfg {
    compartment: string;
    shardCount?: number;
    nodes?: string[];
    basePath?: string;
    subPath?: string;
    maxReaders?: number;
}
export interface IFileSystemPersistenceCfg {
    enabled?: boolean;
    maxShardCount?: number;
    compartments: IFileSystemCompartmentCfg[];
    basePath?: string;
    shardCount?: number;
    maxReaders?: number;
}
export declare function createFsPersistenceSuiteFromConfig(env: IConfigEnv<IFileSystemPersistenceCfg>, runtimeEnabled: boolean): ActorSuite | undefined;
