packages/sync/api-report.api.md
Do not edit this file. It is a report generated by API Extractor.
import { Editor } from 'tldraw';
import { Signal } from 'tldraw';
import { TLAssetStore } from 'tldraw';
import { TLPersistentClientSocket } from '@tldraw/sync-core';
import { TLPresenceStateInfo } from 'tldraw';
import { TLPresenceUserInfo } from 'tldraw';
import { TLStore } from 'tldraw';
import { TLStoreSchemaOptions } from 'tldraw';
import { TLStoreWithStatus } from 'tldraw';
// @public
export type RemoteTLStoreWithStatus = Exclude<TLStoreWithStatus, {
status: 'not-synced';
} | {
status: 'synced-local';
}>;
// @public
export function useSync(opts: UseSyncOptions & TLStoreSchemaOptions): RemoteTLStoreWithStatus;
// @public (undocumented)
export type UseSyncConnectFn = (query: {
sessionId: string;
storeId: string;
}) => TLPersistentClientSocket;
// @public
export function useSyncDemo(options: UseSyncDemoOptions & TLStoreSchemaOptions): RemoteTLStoreWithStatus;
// @public (undocumented)
export interface UseSyncDemoOptions {
// Warning: (ae-unresolved-inheritdoc-reference) The @inheritDoc reference could not be resolved: No member was found with name "getUserPresence"
//
// (undocumented)
getUserPresence?(store: TLStore, user: TLPresenceUserInfo): null | TLPresenceStateInfo;
// @internal (undocumented)
host?: string;
roomId: string;
userInfo?: Signal<TLPresenceUserInfo> | TLPresenceUserInfo;
}
// @public
export type UseSyncOptions = UseSyncOptionsWithConnectFn | UseSyncOptionsWithUri;
// @public
export interface UseSyncOptionsBase {
assets: TLAssetStore;
getUserPresence?(store: TLStore, user: TLPresenceUserInfo): null | TLPresenceStateInfo;
onCustomMessageReceived?(data: any): void;
// @internal (undocumented)
onMount?(editor: Editor): void;
// @internal
roomId?: string;
// @internal (undocumented)
trackAnalyticsEvent?(name: string, data: {
[key: string]: any;
}): void;
userInfo?: Signal<TLPresenceUserInfo> | TLPresenceUserInfo;
}
// @public (undocumented)
export interface UseSyncOptionsWithConnectFn extends UseSyncOptionsBase {
connect: UseSyncConnectFn;
// (undocumented)
uri?: never;
}
// @public (undocumented)
export interface UseSyncOptionsWithUri extends UseSyncOptionsBase {
// (undocumented)
connect?: never;
uri: (() => Promise<string> | string) | string;
}
export * from "@tldraw/sync-core";
// (No @packageDocumentation comment for this package)