realm-object-server
Version:
49 lines (48 loc) • 1.68 kB
TypeScript
import { IRealmSyncServerConfiguration } from "realm-sync-server";
import { IService } from "../Service";
import { StatsSink } from "../stats";
import { Logger } from "../shared/Logger";
export interface SyncServiceConfig {
dataPath?: string;
publicKeyPath?: string;
listenAddress?: string;
listenPort?: number;
label?: string;
logLevel?: "all" | "trace" | "debug" | "detail" | "info" | "warn" | "error" | "fatal" | "off";
featureToken?: string;
enableDownloadLogCompaction?: boolean;
maxDownloadSize?: number;
historyTtl?: number;
historyCompactionInterval?: number;
historyCompactionIgnoreClients?: boolean;
enableLogCompaction?: boolean;
enableRealmStateSizeReporting?: boolean;
maxFilesInCache?: number;
maxUploadBacklog?: number;
enableDownloadBootstrapCache?: boolean;
disablePartialSyncCompleter?: boolean;
numAuxPsyncThreads?: number;
disableStateRealms?: boolean;
}
export declare function createSyncServerConfig({ syncServiceConfig, dataPath, statsEndpoint, realmsEncryptionKey, logger, }: {
syncServiceConfig: SyncServiceConfig;
dataPath: string;
logger: Logger;
statsEndpoint?: string;
realmsEncryptionKey?: ArrayBuffer | ArrayBufferView;
}): IRealmSyncServerConfiguration;
export declare class SyncService implements IService {
private readonly config;
readonly tags: string[];
stats: StatsSink;
private logger;
private syncServer;
private statsdSocket;
private statsdToStatsSink;
private statsdToMetricsRealm;
constructor(config?: SyncServiceConfig);
private setLogger;
private start;
private stop;
private address;
}