import { PropertyValueMap } from "lit";
import { FRoot } from "../../mixins/components/f-root/f-root";
import { Ref } from "lit/directives/ref.js";
import { FText } from "../f-text/f-text";
declare const states: readonly ["primary", "danger", "warning", "success", "default"];
declare const sizes: readonly ["large", "medium", "small", "x-small"];
declare const categories: readonly ["fill", "outline"];
declare const placements: readonly ["left", "right", "bottom", "top", "none"];
export type FCountdownStateProp = (typeof states)[number];
export type FCountdownCategoryProp = (typeof categories)[number];
export type FCountdownSizesProp = (typeof sizes)[number];
export type FCountdownLabelProp = (typeof placements)[number];
export type FCountdownDuration = number | string;
export declare class FCountdown extends FRoot {
    /**
     * css loaded from scss file
     */
    static styles: import("lit").CSSResult[];
    /**
     * @attribute toggle accordion
     */
    category?: FCountdownCategoryProp;
    /**
     * @attribute toggle accordion
     */
    duration?: FCountdownDuration;
    /**
     * @attribute Each variant has various sizes. By default medium is the default size.
     */
    size?: FCountdownSizesProp;
    /**
     * @attribute The states on tags are to indicate various degrees of emphasis of the action.
     */
    state?: FCountdownStateProp;
    /**
     * @attribute The states on tags are to indicate various degrees of emphasis of the action.
     */
    labelPlacement?: FCountdownLabelProp;
    fill: string;
    remaining: number;
    timerText: string;
    timerRef: Ref<FText>;
    currentProgress: number;
    interval: number;
    countdownId: number;
    /**
     * apply inline styles to shadow-dom for custom fill.
     */
    get applyStyles(): string;
    get applyPieStyles(): string;
    get maskStyles(): string;
    get outlineTimerStyle(): string;
    get secondsDuration(): number;
    get labelSize(): "small" | "medium" | "x-small";
    get countdownWidth(): "" | "55px";
    get countdownAlignment(): "middle-center" | "middle-right";
    init(): void;
    convertSecondsToMinutesAndSeconds(seconds: string | number): string;
    updateTimerText(): void;
    disconnectedCallback(): void;
    validateDurationProperties(): void;
    validateStateProperties(): void;
    protected willUpdate(changedProperties: PropertyValueMap<any> | Map<PropertyKey, unknown>): void;
    updateAriaAttributes(): void;
    render(): import("lit-html").TemplateResult<1>;
    protected updated(changedProperties: PropertyValueMap<any> | Map<PropertyKey, unknown>): void;
}
/**
 * Required for typescript
 */
declare global {
    interface HTMLElementTagNameMap {
        "f-countdown": FCountdown;
    }
}
export {};
