UNPKG

@darlean/fs-persistence-suite

Version:

File System Persistence Suite that uses a physical or shared file system to persist data.

23 lines (22 loc) 1.56 kB
/// <reference types="node" /> import { IActivatable, IPersistenceLoadOptions, IPersistenceLoadResult, IPersistenceQueryOptions, IPersistenceQueryResult, IPersistenceService, IPersistenceStoreBatchOptions, IPersistenceStoreBatchResult, IPersistenceStoreOptions, ITypedPortal } from '@darlean/base'; import { FsPersistenceActor } from './syncactor.impl'; import { BufferOf, IDeSer } from '@darlean/utils'; export interface IFsPersistenceServiceOptions { shardCount: number; nodes: string[]; } export declare class FsPersistenceService implements IPersistenceService, IActivatable { private deser; private shards; constructor(options: IFsPersistenceServiceOptions, actorPortal: ITypedPortal<FsPersistenceActor>, deser: IDeSer); activate(): Promise<void>; store(options: IPersistenceStoreOptions<Buffer>): Promise<void>; storeBatch(options: IPersistenceStoreBatchOptions<Buffer>): Promise<IPersistenceStoreBatchResult>; storeBatchBuffer(options: BufferOf<IPersistenceStoreBatchOptions<Buffer>>): Promise<BufferOf<IPersistenceStoreBatchResult>>; load(options: IPersistenceLoadOptions): Promise<IPersistenceLoadResult<Buffer>>; query(options: IPersistenceQueryOptions): Promise<IPersistenceQueryResult<Buffer>>; queryBuffer(options: IPersistenceQueryOptions): Promise<BufferOf<IPersistenceQueryResult<Buffer>>>; protected storeBatchImpl(options: IPersistenceStoreBatchOptions<Buffer>): Promise<IPersistenceStoreBatchResult>; protected deriveShardIdx(partitionKey: string[]): number; }