import { LitElement, PropertyValues, SVGTemplateResult } from 'lit';
import { Tickmark } from './tickmark-flat.js';
import { Label } from '../compass-flat/compass-flat.js';
import { Priority } from '../types.js';
import { RotType, LinearRotPosition } from '../rate-of-turn/rot-renderer.js';
export { RotType, LinearRotPosition };
export declare class ObcWatchFlat extends LitElement {
    width: number;
    height: number;
    padding: number;
    rotation: number;
    tickmarkSpacing: number;
    angleSetpoint: number | undefined;
    tickmarks: Tickmark[];
    labels: Label[];
    FOVIndicator: SVGTemplateResult[];
    trackHeight: number;
    ticksHeight: number;
    borderRadius: number;
    bottomBar: boolean;
    rotType: RotType | undefined;
    rotPosition: LinearRotPosition;
    /** Bar start position in SVG user-space x-coordinates (center-origin). Computed by the parent instrument. */
    rotStartX: number;
    /** Bar end position in SVG user-space x-coordinates (center-origin). Computed by the parent instrument. */
    rotEndX: number;
    /**
     * Pixel spacing between adjacent dots in the linear ROT strip.
     * Must be > 0 to enable animation; the default `0` intentionally disables
     * the spinning dots so the parent instrument must supply a meaningful value
     * derived from the current scale (e.g. `LINEAR_DOT_ANGLE_SPACING * translationScale`).
     */
    rotDotSpacing: number;
    rotPriority: Priority;
    set rotationsPerMinute(value: number);
    get rotationsPerMinute(): number;
    private _rotationsPerMinute;
    private _rotController?;
    private get totalHeight();
    private renderClipPath;
    private renderLabelMask;
    private renderLabels;
    private watchFace;
    private getRotTrackY;
    private getRotColors;
    private renderRot;
    updated(changed: PropertyValues): void;
    disconnectedCallback(): void;
    render(): import('lit-html').TemplateResult<1>;
    static styles: import('lit').CSSResult;
}
declare global {
    interface HTMLElementTagNameMap {
        'obc-watch-flat': ObcWatchFlat;
    }
}
//# sourceMappingURL=watch-flat.d.ts.map