import { Key, PageElement } from "../page-element";
import { PathService } from "../../../service/path.service";
import { IButton, IButtonHandler, IPathApp } from "../../../pathinterface";
import { TranslationService } from "../../../service/translation.service";
import { ButtonDetail } from "./button-detail";
import * as i0 from "@angular/core";
export declare class ButtonComponent {
    button: Button;
    static ɵfac: i0.ɵɵFactoryDeclaration<ButtonComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ButtonComponent, "path-button", never, { "button": "button"; }, { "button": "button"; }, never, never>;
}
export declare class Button extends PageElement implements IButton {
    protected pathService: PathService;
    protected translationService: TranslationService;
    private _icon;
    private _cssStyle;
    private _cssClass;
    private _cssButtonTarget;
    private _cssGroupBorder;
    private _handler;
    private _details;
    private _tooltip;
    private _url;
    private _page;
    private _form;
    private _formHandler;
    constructor(app: IPathApp, pathService: PathService, translationService: TranslationService);
    onClick(): void;
    setIcon(icon: string): void;
    setForm(form: string): void;
    setFormHandler(formHandler: string): void;
    setPage(page: string): void;
    setKey(key: Key): void;
    getApp(): IPathApp;
    getName(): string;
    get icon(): string;
    set icon(value: string);
    get cssStyle(): Object;
    get cssClass(): string;
    get cssButtonTarget(): boolean;
    get cssGroupBorder(): string;
    set cssGroupBorder(value: string);
    get handler(): IButtonHandler;
    set handler(value: IButtonHandler);
    get details(): ButtonDetail[];
    set details(value: ButtonDetail[]);
    get page(): string;
    set page(value: string);
    get form(): string;
    set form(value: string);
    get formHandler(): string;
    set formHandler(value: string);
    get url(): string;
    set url(value: string);
    get tooltip(): string;
    set tooltip(value: string);
    fromJson(modelElement: any): void;
}
