import { CustomElement } from '../../Abstracts/CustomElement';
import type { EpgElement } from './EpgElement';
import { IEpgProgramElementProps } from './IEpgProgramElementProps';
declare const EpgProgramElement_base: import("../../../../Index").ControlBehaviorReturn<import("../../../../Index").ControlBehaviorReturn<import("../../../../Index").ControlBehaviorReturn<import("../../../../Index").ControlBehaviorReturn<import("../../../../Index").ControlBehaviorReturn<import("../../../../Index").ControlBehaviorReturn<import("../../../../Index").ControlBehaviorReturn<import("../../../../Index").ControlBehaviorReturn<typeof CustomElement, import("../../../Behaviors/Valueable").IValueableProps<unknown>>, import("../../../Behaviors/Focusable").IFocusableProps>, import("../../../Behaviors/Disableable").IDisableableProps>, import("../../../Behaviors/Appearanceable").IAppearanceableProps>, import("../../../Behaviors/Variantable").IVariantableProps>, import("../../../Behaviors/Boundable").IBoundableProps>, import("../../../Behaviors/Localeable").ILocaleableProps>, import("../../../Behaviors/Filterable").IFilterableChildProps>;
/**
 * EPG Program - An individual program slot rendered within a channel row of an Electronic Program Guide.
 *
 * Represents a single broadcast program occupying a specific time range on a given channel lane.
 * The `lane` attribute places the program on the correct channel row; the `header` property
 * (set via JavaScript) provides the program title for display.
 *
 * @name EpgProgramElement
 * @element mosaik-epg-program
 * @category Selectors
 *
 * @slot - Default content area for program title text
 *
 * @csspart content - The content part.
 * @csspart focusRing - The focusRing part.
 * @csspart header - The header part.
 *
 * @cssprop {String} --epg-program-background-color - The program background color CSS custom property.
 * @cssprop {String} --epg-program-border-color - The program border color CSS custom property.
 * @cssprop {String} --epg-program-border-radius - The program border radius CSS custom property.
 * @cssprop {String} --epg-program-border-style - The program border style CSS custom property.
 * @cssprop {String} --epg-program-border-width - The program border width CSS custom property.
 * @cssprop {String} --epg-program-font-family - The program font family CSS custom property.
 * @cssprop {String} --epg-program-font-letter-spacing - The program font letter spacing CSS custom property.
 * @cssprop {String} --epg-program-font-line-height - The program font line height CSS custom property.
 * @cssprop {String} --epg-program-font-size - The program font size CSS custom property.
 * @cssprop {String} --epg-program-font-text-decoration - The program font text decoration CSS custom property.
 * @cssprop {String} --epg-program-font-text-transform - The program font text transform CSS custom property.
 * @cssprop {String} --epg-program-font-weight - The program font weight CSS custom property.
 * @cssprop {String} --epg-program-foreground-color - The program foreground color CSS custom property.
 * @cssprop {String} --epg-program-gap - The program gap CSS custom property.
 * @cssprop {String} --epg-program-padding-bottom - The program padding bottom CSS custom property.
 * @cssprop {String} --epg-program-padding-left - The program padding left CSS custom property.
 * @cssprop {String} --epg-program-padding-right - The program padding right CSS custom property.
 * @cssprop {String} --epg-program-padding-top - The program padding top CSS custom property.
 * @cssprop {String} --epg-program-shadow - The program shadow CSS custom property.
 * @cssprop {String} --epg-program-shadow-blur - The program shadow blur CSS custom property.
 * @cssprop {String} --epg-program-shadow-color - The program shadow color CSS custom property.
 * @cssprop {String} --epg-program-shadow-offset-x - The program shadow offset x CSS custom property.
 * @cssprop {String} --epg-program-shadow-offset-y - The program shadow offset y CSS custom property.
 * @cssprop {String} --epg-program-shadow-spread - The program shadow spread CSS custom property.
 * @cssprop {String} --epg-program-transition-duration - The program transition duration CSS custom property.
 * @cssprop {String} --epg-program-transition-mode - The program transition mode CSS custom property.
 * @cssprop {String} --epg-program-transition-property - The program transition property CSS custom property.
 * @cssprop {String} --epg-program-translate - The program translate CSS custom property.
 *
 * @dependency mosaik-focus-ring - The Focus Ring element.
 * @dependency mosaik-stack - The Stack element.
 * @dependency mosaik-text - The Text element.
 *
 * @example
 * ```html
 * <mosaik-epg-program lane="0" variant="primary">Morning News</mosaik-epg-program>
 *
 * <mosaik-epg-program lane="1" disabled>Off-air</mosaik-epg-program>
 * ```
 *
 * @public
 */
export declare class EpgProgramElement extends EpgProgramElement_base implements IEpgProgramElementProps {
    private readonly _keyboardController;
    private readonly _inlineStyleController;
    private _boardElement;
    private _header;
    private _lane;
    /**
     * @public
     */
    constructor();
    /**
     * Returns the `is` property.
     * The `is` property represents natural name of this element.
     *
     * @public
     * @static
     * @readonly
     */
    static get is(): string;
    /**
     * Gets or sets the `header` property.
     *
     * @public
     */
    get header(): string;
    set header(value: string);
    /**
     * Gets or sets the `lane` property.
     *
     * @public
     * @attr
     */
    get lane(): number;
    set lane(value: number);
    get root(): EpgElement;
    /**
     * Gets the `displayText` property.
     *
     * @public
     * @readonly
     * @hidden
     */
    get displayText(): string;
    /**
     * @public
     * @override
     */
    connectedCallback(): void;
    /**
     * @protected
     * @override
     */
    protected onApplyTemplate(): void;
    protected onClick(_: MouseEvent): void;
    /**
     * Calculates the program block position (left, width, top, height).
     *
     * @private
     */
    private calculatePosition;
}
/**
 * @public
 */
export declare namespace EpgProgramElement {
    type Props = IEpgProgramElementProps;
}
/**
 * @public
 */
declare global {
    interface HTMLElementTagNameMap {
        'mosaik-epg-program': EpgProgramElement;
    }
}
export {};
//# sourceMappingURL=EpgProgramElement.d.ts.map