import { Schema, SchemaToObject, TDocumentDropResponse, TDocumentHistoryFindResponse, TDocumentMetadata, TDocumentProofStatusReponse, TDocumentRecord, TDocumentUpdateResponse, TMerkleTreeProofByDocIdResponse, TPagination, TSchemaFieldDefinition } from '@zkdb/common'; import { Result } from '../../utils/result'; import { IMetadata } from './metadata'; export type TDocument = Pick; export interface IDocument { get document(): TDocument & T; get metadata(): IMetadata; drop(): Promise>; update(document: Partial): Promise>; merkleProof(): Promise>; merkleProofVerify(schema: Schema & (SchemaToObject extends T ? unknown : never), merkleProof: TMerkleTreeProofByDocIdResponse): boolean; history(pagination?: TPagination): Promise>; proofStatus(): Promise>; }