/// /// interface FullSlotId { readonly component: string; readonly element: string; readonly slot: string; } interface SlotInstanceElement { readonly id: FullSlotId; getDisplayName(): Promise; getChildren(): Promise; append(child: AnyComponent): Promise; prepend(child: AnyComponent): Promise; } interface FullTextPropId { readonly component: string; readonly element: string; readonly prop: string; } type TextPropInsertTarget = | AnyElement | ElementPreset | BuilderElement | string | AnyComponent; interface TextPropElement { readonly id: FullTextPropId; readonly type: 'TextPropElement'; getDisplayName(): Promise; getChildren(): Promise; append(target: TextPropInsertTarget): Promise; prepend(target: TextPropInsertTarget): Promise; } interface RichTextPropElement { readonly id: FullTextPropId; readonly type: 'RichTextPropElement'; getDisplayName(): Promise; getChildren(): Promise; append(target: TextPropInsertTarget): Promise; prepend(target: TextPropInsertTarget): Promise; }