import type { Handler } from '../handler'; import { Handlers } from '../handler'; import type { Token } from '../token'; import type { ParserInterface, ParserOptions } from './type'; export declare class Parser implements ParserInterface { protected options: ParserOptions; protected handlers: Handlers; constructor(options?: Partial); setHandler(items: Record): void; setHandler(id: string, handler: Handler): void; unsetHandler(id: string | string[]): void; /** * Tokenize bbcode input string. * * @param input * @param preserveNewLines */ parseBBCode(input: string, preserveNewLines?: boolean): Token[]; /** * Tokenize html input string. * * @param input */ parseHTML(input: string): Token[]; /** * Convert a bbcode string to a html string. * * @param input * @param preserveNewLines */ toHTML(input: string, preserveNewLines?: boolean): string; /** * Alias for toHTML. * * @alias toHTML * @param input * @param preserveNewLines */ fromBBCode(input: string, preserveNewLines?: boolean): string; /** * Clean up bbcode ( remove unnecessary ident, ... ) * * @param input * @param preserveNewLines */ cleanupBBCode(input: string, preserveNewLines?: boolean): string; /** * Convert a html string to a bbcode string. * * @param input * @param _preserveNewLines */ toBBCode(input: string, _preserveNewLines?: boolean): string; /** * Alias for toBBCode. * * @alias toBBCode * @param input */ fromHTML(input: string): string; }