import GirafeHTMLElement from '../../base/GirafeHTMLElement.js';
import { TimeAwareLayer } from '../../models/layers/timeawarelayer.js';
import TimePickerComponent from './timepicker/component.js';
import TimeSliderComponent from './timeslider/component.js';
import LayerTimeFormatter from '../../tools/time/layertimeformatter.js';
import ITimeOptions, { TimeMode, TimeWidget } from '../../tools/time/itimeoptions.js';
declare class TimeRestrictionComponent extends GirafeHTMLElement {
    protected templateUrl: string | null;
    protected styleUrls: string[] | null;
    template: () => import("uhtml").Hole;
    layer: TimeAwareLayer;
    timeOptions: ITimeOptions;
    timeFormatter: LayerTimeFormatter;
    mode: TimeMode;
    widget: TimeWidget;
    timeWidget: TimeSliderComponent | TimePickerComponent;
    constructor(layer: TimeAwareLayer);
    renderComponent(): void;
    initTimeWidget(): void;
    onTimeChange(newTimeRestriction: string | undefined): void;
    onRemove(): void;
    onOutsideTimeChange(newTime: string | undefined): void;
    protected connectedCallback(): void;
}
export default TimeRestrictionComponent;
