BlockSuite API Documentation / @blocksuite/store / Doc
Class: Doc 
Constructors 
new Doc() 
new Doc(
__namedParameters):Doc
Parameters 
• __namedParameters: DocOptions
Returns 
Defined in 
packages/framework/store/src/store/doc/doc.ts:207
Properties 
_blockCollection 
protectedreadonly_blockCollection:BlockCollection
Defined in 
packages/framework/store/src/store/doc/doc.ts:27
_blocks 
protectedreadonly_blocks:Signal<Record<string,Block>>
Defined in 
packages/framework/store/src/store/doc/doc.ts:29
_crud 
protectedreadonly_crud:DocCRUD
Defined in 
packages/framework/store/src/store/doc/doc.ts:31
_disposeBlockUpdated 
protectedreadonly_disposeBlockUpdated:Disposable
Defined in 
packages/framework/store/src/store/doc/doc.ts:33
_query 
protectedreadonly_query:Query
Defined in 
packages/framework/store/src/store/doc/doc.ts:35
_readonly? 
protectedreadonlyoptional_readonly:boolean
Defined in 
packages/framework/store/src/store/doc/doc.ts:40
_schema 
protectedreadonly_schema:Schema
Defined in 
packages/framework/store/src/store/doc/doc.ts:42
slots 
readonlyslots:object&object
Type declaration 
historyUpdated 
historyUpdated:
Slot<void>
yBlockUpdated 
yBlockUpdated:
Slot<object|object>
Type declaration 
blockUpdated 
blockUpdated:
Slot<object|object|object>
ready 
ready:
Slot<void>
This is always triggered after doc.load is called.
rootAdded 
rootAdded:
Slot<string>
This fires when the root block is added via API call or has just been initialized from existing ydoc. useful for internal block UI components to start subscribing following up events. Note that at this moment, the whole block tree may not be fully initialized yet.
rootDeleted 
rootDeleted:
Slot<string>
Defined in 
packages/framework/store/src/store/doc/doc.ts:44
Accessors 
awarenessStore 
getawarenessStore():AwarenessStore<BlockSuiteFlags>
Returns 
AwarenessStore<BlockSuiteFlags>
Defined in 
packages/framework/store/src/store/doc/doc.ts:82
awarenessSync 
getawarenessSync():AwarenessEngine
Returns 
AwarenessEngine
Defined in 
packages/framework/store/src/store/doc/doc.ts:86
blobSync 
getblobSync():BlobEngine
Returns 
BlobEngine
Defined in 
packages/framework/store/src/store/doc/doc.ts:90
blockCollection 
getblockCollection():BlockCollection
Returns 
Defined in 
packages/framework/store/src/store/doc/doc.ts:94
blocks 
getblocks():Signal<Record<string,Block>>
Returns 
Signal<Record<string, Block>>
Defined in 
packages/framework/store/src/store/doc/doc.ts:98
blockSize 
getblockSize():number
Returns 
number
Defined in 
packages/framework/store/src/store/doc/doc.ts:102
canRedo 
getcanRedo():boolean
Returns 
boolean
Defined in 
packages/framework/store/src/store/doc/doc.ts:106
canUndo 
getcanUndo():boolean
Returns 
boolean
Defined in 
packages/framework/store/src/store/doc/doc.ts:110
captureSync 
getcaptureSync(): () =>void
Returns 
Function
Capture current operations to undo stack synchronously.
Returns 
void
Defined in 
packages/framework/store/src/store/doc/doc.ts:114
clear 
getclear(): () =>void
Returns 
Function
Returns 
void
Defined in 
packages/framework/store/src/store/doc/doc.ts:118
collection 
getcollection():DocCollection
Returns 
Defined in 
packages/framework/store/src/store/doc/doc.ts:122
docSync 
getdocSync():DocEngine
Returns 
DocEngine
Defined in 
packages/framework/store/src/store/doc/doc.ts:126
generateBlockId 
getgenerateBlockId(): () =>string
Returns 
Function
Returns 
string
Defined in 
packages/framework/store/src/store/doc/doc.ts:130
history 
gethistory():UndoManager
Returns 
UndoManager
Defined in 
packages/framework/store/src/store/doc/doc.ts:134
id 
getid():string
Returns 
string
Defined in 
packages/framework/store/src/store/doc/doc.ts:138
isEmpty 
getisEmpty():boolean
Returns 
boolean
Defined in 
packages/framework/store/src/store/doc/doc.ts:142
loaded 
getloaded():boolean
Returns 
boolean
Defined in 
packages/framework/store/src/store/doc/doc.ts:146
meta 
getmeta():undefined|DocMeta
Returns 
undefined | DocMeta
Defined in 
packages/framework/store/src/store/doc/doc.ts:150
readonly 
getreadonly():boolean
Returns 
boolean
Defined in 
packages/framework/store/src/store/doc/doc.ts:154
ready 
getready():boolean
Returns 
boolean
Defined in 
packages/framework/store/src/store/doc/doc.ts:161
redo 
getredo(): () =>void
Returns 
Function
Returns 
void
Defined in 
packages/framework/store/src/store/doc/doc.ts:165
resetHistory 
getresetHistory(): () =>void
Returns 
Function
Returns 
void
Defined in 
packages/framework/store/src/store/doc/doc.ts:169
root 
getroot():null|BlockModel<object,SignaledProps<object>>
Returns 
null | BlockModel<object, SignaledProps<object>>
Defined in 
packages/framework/store/src/store/doc/doc.ts:173
rootDoc 
getrootDoc():BlockSuiteDoc
Returns 
Defined in 
packages/framework/store/src/store/doc/doc.ts:179
schema 
getschema():Schema
Returns 
Defined in 
packages/framework/store/src/store/doc/doc.ts:183
spaceDoc 
getspaceDoc():Doc
Returns 
Doc
Defined in 
packages/framework/store/src/store/doc/doc.ts:187
Text 
getText(): typeofText
Returns 
typeof Text
Defined in 
packages/framework/store/src/store/doc/doc.ts:191
transact 
gettransact(): (fn,shouldTransact) =>void
Returns 
Function
If shouldTransact is false, the transaction will not be push to the history stack.
Parameters 
• fn
• shouldTransact: boolean = ...
Returns 
void
Defined in 
packages/framework/store/src/store/doc/doc.ts:195
undo 
getundo(): () =>void
Returns 
Function
Returns 
void
Defined in 
packages/framework/store/src/store/doc/doc.ts:199
withoutTransact 
getwithoutTransact(): (callback) =>void
Returns 
Function
Parameters 
• callback
Returns 
void
Defined in 
packages/framework/store/src/store/doc/doc.ts:203
Methods 
addBlock() 
addBlock(flavour, blockProps, parent, parentIndex) 
addBlock<
Key>(flavour,blockProps?,parent?,parentIndex?):string
Type Parameters 
• Key extends Flavour
Parameters 
• flavour: Key
• blockProps?: Partial<BlockModels[Key] extends BlockModel<U, SignaledProps<U>> ? U : never>
• parent?: null | string | BlockModel<object, SignaledProps<object>>
• parentIndex?: number
Returns 
string
Defined in 
packages/framework/store/src/store/doc/doc.ts:346
addBlock(flavour, blockProps, parent, parentIndex) 
addBlock(
flavour,blockProps?,parent?,parentIndex?):string
Parameters 
• flavour: never
• blockProps?: Partial<BlockSysProps & Record<string, unknown> & Omit<BlockProps, "flavour">>
• parent?: null | string | BlockModel<object, SignaledProps<object>>
• parentIndex?: number
Returns 
string
Defined in 
packages/framework/store/src/store/doc/doc.ts:353
addBlocks() 
addBlocks(
blocks,parent?,parentIndex?):string[]
Parameters 
• blocks: object[]
• parent?: null | string | BlockModel<object, SignaledProps<object>>
• parentIndex?: number
Returns 
string[]
Defined in 
packages/framework/store/src/store/doc/doc.ts:388
addSiblingBlocks() 
addSiblingBlocks(
targetModel,props,place):string[]
Parameters 
• targetModel: BlockModel<object, SignaledProps<object>>
• props: Partial<BlockProps>[]
• place: "after" | "before" = 'after'
Returns 
string[]
Defined in 
packages/framework/store/src/store/doc/doc.ts:411
deleteBlock() 
deleteBlock(
model,options):void
Parameters 
• model: BlockModel<object, SignaledProps<object>>
• options = ...
• options.bringChildrenTo?: BlockModel<object, SignaledProps<object>>
• options.deleteChildren?: boolean
Returns 
void
Defined in 
packages/framework/store/src/store/doc/doc.ts:448
dispose() 
dispose():
void
Returns 
void
Defined in 
packages/framework/store/src/store/doc/doc.ts:479
getBlock() 
getBlock(
id):undefined|Block
Parameters 
• id: string
Returns 
undefined | Block
Defined in 
packages/framework/store/src/store/doc/doc.ts:487
getBlock$() 
getBlock$(
id):undefined|Block
Parameters 
• id: string
Returns 
undefined | Block
Defined in 
packages/framework/store/src/store/doc/doc.ts:491
getBlockByFlavour() 
getBlockByFlavour(
blockFlavour):BlockModel<object,SignaledProps<object>>[]
Parameters 
• blockFlavour: string | string[]
Returns 
BlockModel<object, SignaledProps<object>>[]
Deprecated 
Use getBlocksByFlavour instead.
Defined in 
packages/framework/store/src/store/doc/doc.ts:499
getBlockById() 
getBlockById<
Model>(id):null|Model
Type Parameters 
• Model extends BlockModel<object, SignaledProps<object>> = BlockModel<object, SignaledProps<object>>
Parameters 
• id: string
Returns 
null | Model
Deprecated 
Use getBlock instead.
Defined in 
packages/framework/store/src/store/doc/doc.ts:507
getBlocks() 
getBlocks():
BlockModel<object,SignaledProps<object>>[]
Returns 
BlockModel<object, SignaledProps<object>>[]
Defined in 
packages/framework/store/src/store/doc/doc.ts:513
getBlocksByFlavour() 
getBlocksByFlavour(
blockFlavour):Block[]
Parameters 
• blockFlavour: string | string[]
Returns 
Block[]
Defined in 
packages/framework/store/src/store/doc/doc.ts:517
getNext() 
getNext(
block):null|BlockModel<object,SignaledProps<object>>
Parameters 
• block: string | BlockModel<object, SignaledProps<object>>
Returns 
null | BlockModel<object, SignaledProps<object>>
Defined in 
packages/framework/store/src/store/doc/doc.ts:526
getNexts() 
getNexts(
block):BlockModel<object,SignaledProps<object>>[]
Parameters 
• block: string | BlockModel<object, SignaledProps<object>>
Returns 
BlockModel<object, SignaledProps<object>>[]
Defined in 
packages/framework/store/src/store/doc/doc.ts:533
getParent() 
getParent(
target):null|BlockModel<object,SignaledProps<object>>
Parameters 
• target: string | BlockModel<object, SignaledProps<object>>
Returns 
null | BlockModel<object, SignaledProps<object>>
Defined in 
packages/framework/store/src/store/doc/doc.ts:541
getPrev() 
getPrev(
block):null|BlockModel<object,SignaledProps<object>>
Parameters 
• block: string | BlockModel<object, SignaledProps<object>>
Returns 
null | BlockModel<object, SignaledProps<object>>
Defined in 
packages/framework/store/src/store/doc/doc.ts:552
getPrevs() 
getPrevs(
block):BlockModel<object,SignaledProps<object>>[]
Parameters 
• block: string | BlockModel<object, SignaledProps<object>>
Returns 
BlockModel<object, SignaledProps<object>>[]
Defined in 
packages/framework/store/src/store/doc/doc.ts:559
getSchemaByFlavour() 
getSchemaByFlavour(
flavour):undefined|object
Parameters 
• flavour: Flavour
Returns 
undefined | object
Defined in 
packages/framework/store/src/store/doc/doc.ts:567
hasBlock() 
hasBlock(
id):boolean
Parameters 
• id: string
Returns 
boolean
Defined in 
packages/framework/store/src/store/doc/doc.ts:571
hasBlockById() 
hasBlockById(
id):boolean
Parameters 
• id: string
Returns 
boolean
Deprecated 
Use hasBlock instead.
Defined in 
packages/framework/store/src/store/doc/doc.ts:579
load() 
load(
initFn?):Doc
Parameters 
• initFn?
Returns 
Defined in 
packages/framework/store/src/store/doc/doc.ts:583
moveBlocks() 
moveBlocks(
blocksToMove,newParent,targetSibling,shouldInsertBeforeSibling):void
Parameters 
• blocksToMove: BlockModel<object, SignaledProps<object>>[]
• newParent: BlockModel<object, SignaledProps<object>>
• targetSibling: null | BlockModel<object, SignaledProps<object>> = null
• shouldInsertBeforeSibling: boolean = true
Returns 
void
Defined in 
packages/framework/store/src/store/doc/doc.ts:589
updateBlock() 
updateBlock(model, props) 
updateBlock<
T>(model,props):void
Type Parameters 
• T extends Partial<BlockProps>
Parameters 
• model: BlockModel<object, SignaledProps<object>>
• props: T
Returns 
void
Defined in 
packages/framework/store/src/store/doc/doc.ts:610
updateBlock(model, callback) 
updateBlock(
model,callback):void
Parameters 
• model: BlockModel<object, SignaledProps<object>>
• callback
Returns 
void
Defined in 
packages/framework/store/src/store/doc/doc.ts:612