@river-build/sdk
Version:
For more details, visit the following resources:
68 lines • 2.8 kB
TypeScript
import { RiverConnection, RiverConnectionModel } from './river-connection/riverConnection';
import { RiverConfig } from '../riverConfig';
import { RetryParams } from '../rpcInterceptors';
import { Store } from '../store/store';
import { SignerContext } from '../signerContext';
import { RiverChainModel } from './river-connection/models/riverChain';
import { User, UserModel } from './user/user';
import { UserMembershipsModel } from './user/models/userMemberships';
import { PersistedObservable } from '../observable/persistedObservable';
import { Observable } from '../observable/observable';
import { UserInboxModel } from './user/models/userInbox';
import { UserMetadataModel } from './user/models/userMetadata';
import { UserSettingsModel } from './user/models/userSettings';
import { Spaces, SpacesModel } from './spaces/spaces';
import { AuthStatus } from './river-connection/models/authStatus';
import { ethers } from 'ethers';
import type { EncryptionDeviceInitOpts } from '@river-build/encryption';
import { Gdms, type GdmsModel } from './gdms/gdms';
import { Dms, DmsModel } from './dms/dms';
import { UnpackEnvelopeOpts } from '../sign';
import { DLogger } from '@river-build/dlog';
export interface SyncAgentConfig {
context: SignerContext;
riverConfig: RiverConfig;
retryParams?: RetryParams;
highPriorityStreamIds?: string[];
deviceId?: string;
disablePersistenceStore?: boolean;
riverProvider?: ethers.providers.Provider;
baseProvider?: ethers.providers.Provider;
encryptionDevice?: EncryptionDeviceInitOpts;
onTokenExpired?: () => void;
unpackEnvelopeOpts?: UnpackEnvelopeOpts;
logId?: string;
}
export declare class SyncAgent {
log: DLogger;
userId: string;
config: SyncAgentConfig;
riverConnection: RiverConnection;
store: Store;
user: User;
spaces: Spaces;
gdms: Gdms;
dms: Dms;
private stopped;
observables: {
riverAuthStatus: Observable<AuthStatus>;
riverConnection: PersistedObservable<RiverConnectionModel>;
riverChain: PersistedObservable<RiverChainModel>;
spaces: PersistedObservable<SpacesModel>;
user: PersistedObservable<UserModel>;
userMemberships: PersistedObservable<UserMembershipsModel>;
userInbox: PersistedObservable<UserInboxModel>;
userMetadata: PersistedObservable<UserMetadataModel>;
userSettings: PersistedObservable<UserSettingsModel>;
gdms: PersistedObservable<GdmsModel>;
dms: PersistedObservable<DmsModel>;
};
constructor(config: SyncAgentConfig);
start(): Promise<void>;
stop(): Promise<void>;
syncAgentDbName(): string;
persistenceDbName(): string;
cryptoDbName(): string;
dbName(db: string): string;
}
//# sourceMappingURL=syncAgent.d.ts.map