import { Component, TemplateFunction } from "@ribajs/core";
import { Collapse } from "../../services/collapse.js";
import { JsxBs5CollapseProps } from "../../types/index.js";
interface Scope {
    title: string;
    content: string;
    collapsed: boolean;
    toggle: Bs5CollapseComponent["toggle"];
    show: Bs5CollapseComponent["show"];
    hide: Bs5CollapseComponent["hide"];
    collapseEl?: HTMLUnknownElement;
}
export declare class Bs5CollapseComponent extends Component {
    static tagName: string;
    protected autobind: boolean;
    protected collapse?: Collapse;
    static get observedAttributes(): (keyof JsxBs5CollapseProps)[];
    protected requiredAttributes(): (keyof JsxBs5CollapseProps)[];
    scope: Scope;
    constructor();
    hide(): void;
    show(): void;
    toggle(): void;
    protected addEventListeners(): void;
    protected removeEventListeners(): void;
    protected onShow(): void;
    protected onHide(): void;
    protected triggerVisibilityChangedForElement(visible: boolean): void;
    protected connectedCallback(): void;
    protected afterBind(): Promise<void>;
    protected template(): ReturnType<TemplateFunction>;
}
export {};
