import { default as React } from 'react'; import { Crepe } from '@milkdown/crepe'; import { Ctx } from '@milkdown/ctx'; import { GrammarCheckConfig } from './grammarCheck'; export type GrammarCheckFeatureConfig = GrammarCheckConfig; /** * Configure grammar check feature for the editor. * Installs the decoration plugin for loading animation. * * Usage: * ```ts * configureGrammarCheck(crepe); * ``` */ export declare function configureGrammarCheck(crepe: Crepe): void; type GrammarToolbarItem = { icon: string; active: (ctx: Ctx) => boolean; onRun: (ctx: Ctx) => void; }; type ToolbarGroupHandle = { addItem: (key: string, item: GrammarToolbarItem) => unknown; }; /** * Creates a grammar check toolbar button configuration. * Use this with Crepe's toolbar builder to add the grammar check button. * * @param onGrammarCheckRef - React ref containing the grammar check callback * * Usage: * ```ts * [Crepe.Feature.Toolbar]: { * buildToolbar: (builder) => { * const functionGroup = builder.getGroup('function'); * configureGrammarToolbarButton(functionGroup, onGrammarCheckRef); * }, * }, * ``` */ export declare function createGrammarToolbarButton(onGrammarCheckRef: React.RefObject): GrammarToolbarItem; /** * Adds the grammar check button to an existing toolbar group. * Convenience wrapper around createGrammarToolbarButton. * * Usage: * ```ts * [Crepe.Feature.Toolbar]: { * buildToolbar: (builder) => { * const functionGroup = builder.getGroup('function'); * configureGrammarToolbarButton(functionGroup, onGrammarCheckRef); * }, * }, * ``` */ export declare function configureGrammarToolbarButton(toolbarGroup: ToolbarGroupHandle, onGrammarCheckRef: React.RefObject): void; export {};