import { LitElement, TemplateResult } from "lit";
import "@openremote/or-mwc-components/or-mwc-input";
import { OrInputChangedEvent } from "@openremote/or-mwc-components/or-mwc-input";
import { PushNotificationMessage } from "@openremote/model";
declare const OrRuleFormPushNotification_base: (new (...args: any[]) => {
    _i18nextJustInitialized: boolean;
    _language: string;
    connectedCallback(): void;
    disconnectedCallback(): void;
    shouldUpdate(changedProps: import("lit").PropertyValues): any;
    initCallback: (options: import("i18next").InitOptions) => void;
    langChangedCallback: () => void;
    readonly isConnected: boolean;
}) & typeof LitElement;
export declare class OrRuleFormPushNotification extends OrRuleFormPushNotification_base {
    message?: PushNotificationMessage;
    static get styles(): import("lit").CSSResult;
    protected render(): TemplateResult<1>;
    /**
     * Internal function that returns a form for configuring a {@link PushNotificationMessage}.
     * {@link onchange} is a callback function can be used to process changes before they are applied.
     */
    protected _getPushNotificationForm(message: PushNotificationMessage, onchange?: (_ev: OrInputChangedEvent, msg?: PushNotificationMessage) => Promise<PushNotificationMessage>): Promise<TemplateResult>;
    /**
     * HTML callback function when the subject of a notification message has changed.
     */
    protected _onTitleChange(ev: OrInputChangedEvent, message: PushNotificationMessage): void;
    /**
     * HTML callback function when the body of a notification message has changed.
     */
    protected _onBodyChange(ev: OrInputChangedEvent, message: PushNotificationMessage): void;
    /**
     * HTML callback function when the "click here to open URL" of a notification has changed.
     */
    protected _onActionUrlChange(ev: OrInputChangedEvent, message: PushNotificationMessage): void;
    /**
     * HTML callback function when the "open in browser switch" of a notification has changed.
     */
    protected _onOpenInBrowserChange(ev: OrInputChangedEvent, message: PushNotificationMessage): void;
    /**
     * HTML callback function when any button text of the notification has changed.
     */
    protected _onButtonTitleChange(ev: OrInputChangedEvent, key: number, message: PushNotificationMessage): void;
}
export {};
//# sourceMappingURL=or-rule-form-push-notification.d.ts.map