BlockSuite API Documentation / @blocksuite/store / defineBlockSchema
Function: defineBlockSchema() 
defineBlockSchema<
Flavour,Role,Props,Metadata,Model,Transformer>(options):Object
Type parameters 
• Flavour extends string
• Role extends "root" | "hub" | "content"
• Props extends object
• Metadata extends Readonly<Object>
• Model extends BlockModel<Props>
• Transformer extends BaseBlockTransformer<Props>
Parameters 
• options: Object
• options.flavour: Flavour
• options.metadata: Metadata
• options.onUpgrade?: (data, previousVersion, latestVersion) => void
• options.props?: (internalPrimitives) => Props
• options.toModel?: () => Model
• options.transformer?: () => Transformer
Returns 
Object
model 
model:
Object&MetadataType declaration 
flavour 
flavour:
Flavourprops 
props:
PropsGetter<Props>role 
role:
RoleonUpgrade? 
onUpgrade?: (
data,previousVersion,latestVersion) =>voidParameters 
• data:
Props• previousVersion:
number• latestVersion:
numberReturns 
voidtransformer? 
transformer?: () =>
TransformerReturns 
Transformerversion 
version:
number
Source 
packages/store/src/schema/base.ts:76
Generated using typedoc-plugin-markdown and TypeDoc