import { AgentPubKey, EntryHash, AppClient, AnyDhtHash, Link, ActionHash } from '@holochain/client'; import { EntryRecord, ZomeClient } from '@holochain-open-dev/utils'; import { Document, Commit, SessionMessage, SynSignal, Workspace } from './types.js'; export declare class SynClient extends ZomeClient { client: AppClient; roleName: string; zomeName: string; constructor(client: AppClient, roleName: string, zomeName?: string); /** Documents */ createDocument(document: Document): Promise>; getDocumentsWithTag(tag: string, local?: boolean): Promise>; getDocument(documentHash: AnyDhtHash): Promise | undefined>; getAuthorsForDocument(documentHash: AnyDhtHash, local?: boolean): Promise>; tagDocument(documentHash: AnyDhtHash, tag: string): Promise; removeDocumentTag(documentHash: AnyDhtHash, tag: string): Promise; tagPathEntryHash(tag: string): Promise; /** Commits */ createCommit(commit: Commit): Promise>; getCommit(commitHash: ActionHash): Promise | undefined>; getCommitsForDocument(documentHash: AnyDhtHash, local?: boolean): Promise>; /** Workspaces */ createWorkspace(workspace: Workspace, initial_commit_hash: ActionHash | undefined): Promise>; getWorkspace(workspace_hash: EntryHash): Promise | undefined>; getWorkspacesForDocument(documentHash: AnyDhtHash, local?: boolean): Promise>; getWorkspaceTips(workspaceHash: EntryHash, local?: boolean): Promise>; updateWorkspaceTip(workspace_hash: EntryHash, new_tip_hash: ActionHash, previous_commit_hashes: Array): Promise; getWorkspaceSessionParticipants(workspace_hash: EntryHash, local?: boolean): Promise>; joinWorkspaceSession(workspace_hash: EntryHash): Promise; leaveWorkspaceSession(workspace_hash: EntryHash): Promise; sendMessage(recipients: Array, message: SessionMessage): Promise; }