import type React from 'react'; import type { IEditorQuery, IToolbarItemConfigTiptap, KeyboardShortcut, ModalService, TiptapEditor, ToolbarButtonRenderers, ToolbarSettingsFunctions, ToolbarType } from '.'; import type { EventSource } from './orchestration'; type Topics = [ 'ricos.toolbars.functionality.buttonClick', 'ricos.toolbars.instance.loaded', 'ricos.toolbars.functionality.search' ]; export type IToolbarSettings = Extract | undefined; export interface IRicosToolbar { readonly type: TbType; isEmpty(): boolean; isVisible(): boolean; getToolbarItemsConfig(options?: { disabled: boolean; }): IToolbarItemConfigTiptap[]; getMegaToolbarItemsConfig(options?: { disabled: boolean; }): IToolbarItemConfigTiptap[]; getToolbarItemsRenderers(referenceElement?: HTMLElement | null | undefined): ToolbarButtonRenderers; getSettings(): IToolbarSettings; publishButtonClick(buttonId: string): boolean; publishSearch(search: string): boolean; publishInstanceLoaded(): boolean; } export type IRicosInstantiableToolbar = IRicosToolbar | IRicosToolbar; export type IRicosInstantiablePluginMenuToolbar = IRicosInstantiableToolbar & { getVisibleFloatingButtonComponent(args: { editorQuery: IEditorQuery['query']; modalService: ModalService; editor: TiptapEditor; nodeId?: string; }): React.ComponentType | undefined; }; export interface IRicosToolbars extends EventSource { readonly static: IRicosInstantiableToolbar; readonly formatting: IRicosInstantiableToolbar; readonly mobile: IRicosInstantiableToolbar; readonly external: IRicosInstantiableToolbar; readonly footer: IRicosInstantiableToolbar; readonly plugin: IRicosInstantiableToolbar; readonly pluginMenu: IRicosInstantiablePluginMenuToolbar; readonly mega: IRicosInstantiableToolbar; byType(type: ToolbarType): IRicosInstantiableToolbar; getShortcuts(): KeyboardShortcut[]; getVisibleToolbars(): IRicosInstantiableToolbar[]; } export {}; //# sourceMappingURL=ricos-toolbars.d.ts.map