immudb-node
Version:
Node.js SDK for immudb written in TypeScript
38 lines (37 loc) • 1.18 kB
TypeScript
import { Metadata } from 'grpc';
import * as schemaTypes from './proto/schema_pb';
import * as services from './proto/schema_grpc_pb';
declare type Server = {
[key: string]: schemaTypes.ImmutableState.AsObject;
};
declare type Servers = {
[key: string]: Server;
};
declare type StateGetMetadata = {
serverName: string;
databaseName: string;
metadata: Metadata;
};
declare type StateSetMetadata = {
serverName: string;
databaseName: string;
};
declare type StateConfig = {
client: services.ImmuServiceClient;
rootPath?: string;
};
declare class State {
servers: Servers;
client: services.ImmuServiceClient;
rootPath: string;
constructor({ client, rootPath }: StateConfig);
get(config: StateGetMetadata): Promise<schemaTypes.ImmutableState>;
getCurrentState(config: StateGetMetadata): Promise<schemaTypes.ImmutableState>;
set({ serverName, databaseName }: StateSetMetadata, state: schemaTypes.ImmutableState.AsObject): void;
getInitialState(): Servers;
commit(): void;
exitHandler(): void;
stringifyServers(): string;
parseServers(stringifiedServers: string): Servers;
}
export default State;