import { GeneralPanelTabApi } from '../api/GeneralPanelTabApi'; import { BaseValidatedClass } from '../BaseValidatedClass'; interface GeneralPanelTabMap { getId(): string; getIcon(): string; getName(): string; getTabIndex(): number; getTemplate(): string; } export declare class GeneralPanelTab extends BaseValidatedClass implements GeneralPanelTabMap { /** Provides access to editor functionalities specific to this tab instance. */ api: GeneralPanelTabApi; /** List of methods that must be implemented by subclasses */ private static readonly REQUIRED_METHODS; constructor(); /** * Gets the unique identifier for this tab. * This ID is used for registration. * @returns A unique string ID. */ getId(): string; /** * Gets the icon key representing this tab in the header. * @returns A string representing the icon key from the IconsRegistry */ getIcon(): string; /** * Retrieves the index of the tab associated with the panel. * The index represents the position/order of the tab in the UI. * * @returns {number} The index of the tab. */ getTabIndex(): number; /** * Gets the display name of the tab shown to the user in the header hint. * Use `this.api.translate()` for localization. * @returns The localized tab name string. */ getName(): string; /** * Determines if the tab should be available for use in the editor. * Override to provide custom logic based on the editor state or configuration. * @returns True if the tab is enabled, false otherwise. Defaults to true. */ isEnabled(): boolean; /** * Gets the HTML template string that defines the initial template of general tab. * @returns An HTML string. */ getTemplate(): string; /** * Lifecycle hook called when any part of the document template has changed. * This can be frequent; use cautiously for performance-sensitive operations. */ onDocumentChanged(): void; /** * Optional hook called when the general panel tab is initially rendered. * Use this for setup tasks like attaching event listeners to the panel's template elements. */ onRender(): void; /** * Optional cleanup hook called when the general panel tab is being destroyed. */ onDestroy(): void; } export {};