import { UserInterface, Components, Controller } from "thoriumjs"; declare const ElementUI: typeof UserInterface.ElementUI; export declare class RouterButtonLink extends Components.Button { constructor(options: RouterLinkOptionsInit); } export interface RouterLinkOptionsInit { link: string; text?: string; id?: string; } export declare class RouterLink extends Components.Link { constructor(options: RouterLinkOptionsInit); } export interface RouterViewController extends Controller { } export interface RouterViewOptionsInit { id?: string; paths?: Record<'/' | string, typeof ElementUI>>; defaultPath?: string; onPathError?: typeof ElementUI>; onPathChange?: (e: MutationRecord) => void; } export declare class RouterView extends UserInterface.ElementUI { constructor(options: RouterViewOptionsInit); } export declare function Router(): router; declare class router { id: any; get RouterView(): { new (options: RouterViewOptionsInit): { "__#1@#private": any; readonly template: UserInterface.TemplateInterface; readonly type: string; readonly prop: Record; readonly childrens: UserInterface.NodeInterface | object[]; readonly proto: RouterViewController; Main(template: UserInterface.TemplateInterface): void; CreateElement(parent?: any): any; }; }; get Link(): { new (options: RouterLinkOptionsInit): { "__#1@#private": any; readonly template: UserInterface.TemplateInterface; readonly type: string; readonly prop: Record; readonly childrens: UserInterface.NodeInterface | object[]; readonly proto: Controller; Main(template: UserInterface.TemplateInterface): void; CreateElement(parent?: any): any; }; }; get Button(): { new (options: RouterLinkOptionsInit): { "__#1@#private": any; readonly template: UserInterface.TemplateInterface; readonly type: string; readonly prop: Record; readonly childrens: UserInterface.NodeInterface | object[]; readonly proto: Controller; Main(template: UserInterface.TemplateInterface): void; CreateElement(parent?: any): any; }; }; } export {};