import { LocalNode } from "cojson"; import { Account, AccountClass, type AnonymousJazzAgent, CoValueFromRaw, CoreAccountSchema, InstanceOfSchema, JazzContextManager, JazzContextManagerAuthProps, JazzContextManagerBaseProps } from "./internal.js"; import { WasmCrypto } from "cojson/crypto/WasmCrypto"; export { assertLoaded } from "./lib/utils.js"; export declare class TestJSCrypto extends WasmCrypto { static create(): Promise; } export declare function getPeerConnectedToTestSyncServer(): import("cojson").Peer; export declare function createJazzTestAccount & CoValueFromRaw) | CoreAccountSchema>(options?: { isCurrentActiveAccount?: boolean; AccountSchema?: S; creationProps?: Record; }): Promise>; export declare function setActiveAccount(account: Account): void; /** * Run a callback without an active account. * * Takes care of restoring the active account after the callback is run. * * If the callback returns a promise, waits for it before restoring the active account. * * @param callback - The callback to run. * @returns The result of the callback. */ export declare function runWithoutActiveAccount(callback: () => Result): Result; export declare function createJazzTestGuest(): Promise<{ guest: AnonymousJazzAgent; }>; export declare class MockConnectionStatus { static connected: boolean; static connectionListeners: Set<(isConnected: boolean) => void>; static setIsConnected(isConnected: boolean): void; static addConnectionListener(listener: (isConnected: boolean) => void): () => void; } export type TestJazzContextManagerProps = JazzContextManagerBaseProps & { defaultProfileName?: string; AccountSchema?: AccountClass & CoValueFromRaw; isAuthenticated?: boolean; }; export declare class TestJazzContextManager extends JazzContextManager> { static fromAccountOrGuest(account?: Acc | { guest: AnonymousJazzAgent; }, props?: TestJazzContextManagerProps): TestJazzContextManager; static fromAccount(account: Acc, props?: TestJazzContextManagerProps): TestJazzContextManager; static fromGuest({ guest }: { guest: AnonymousJazzAgent; }, props?: TestJazzContextManagerProps): TestJazzContextManager; getNewContext(props: TestJazzContextManagerProps, authProps?: JazzContextManagerAuthProps): Promise<{ me: import("./internal.js").CoValueClass & { fromNode: (typeof Account)["fromNode"]; } & CoValueFromRaw extends infer T ? T extends import("./internal.js").CoValueClass & { fromNode: (typeof Account)["fromNode"]; } & CoValueFromRaw ? T extends import("./internal.js").CoValueClass ? InstanceType : never : never : never; node: LocalNode; done: () => void; logOut: () => Promise; addConnectionListener: (listener: (isConnected: boolean) => void) => () => void; connected: () => boolean; }>; } export declare function linkAccounts(a: Account, b: Account, aRole?: "server" | "client", bRole?: "server" | "client"): Promise; export declare function setupJazzTestSync({ asyncPeers, }?: { asyncPeers?: boolean; }): Promise; export declare function disableJazzTestSync(): void; //# sourceMappingURL=testing.d.ts.map