import { LitElement, PropertyValues } from 'lit';
import { InstrumentState, Priority } from '../types.js';
import { AngleAdvice } from '../watch/advice.js';
import { TickmarkStyle } from '../watch/tickmark.js';
import { LinearAdvice } from '../thruster/advice.js';
import { PropellerType } from '../thruster/propeller.js';
import '../watch/watch.js';
export declare class ObcAzimuthThruster extends LitElement {
    private _thrustSetpointId;
    angle: number;
    angleSetpoint: number | undefined;
    newAngleSetpoint: number | undefined;
    atAngleSetpoint: boolean;
    angleSetpointAtZeroDeadband: number;
    angleSetpointOverride: boolean;
    touching: boolean;
    autoAtAngleSetpoint: boolean;
    autoAtAngleSetpointDeadband: number;
    animateSetpoint: boolean;
    /**
     * Interval (in degrees) for primary tickmarks.
     * When undefined or <= 0, no primary tickmarks are shown (only the zero line).
     * Default 90 gives ticks at 0°, 90°, 180°, 270°.
     */
    primaryTickmarkInterval: number | undefined;
    /**
     * Interval (in degrees) for secondary tickmarks.
     * When undefined or <= 0, no secondary tickmarks are shown.
     */
    secondaryTickmarkInterval: number | undefined;
    /**
     * Interval (in degrees) for tertiary tickmarks.
     * When undefined or <= 0, no tertiary tickmarks are shown.
     */
    tertiaryTickmarkInterval: number | undefined;
    showLabels: boolean;
    tickmarksInside: boolean;
    thrust: number;
    thrustSetpoint: number | undefined;
    newThrustSetpoint: number | undefined;
    atThrustSetpoint: boolean;
    thrustSetpointAtZeroDeadband: number;
    thrustSetpointOverride: boolean;
    autoAtThrustSetpoint: boolean;
    autoAtThrustSetpointDeadband: number;
    state: InstrumentState;
    priority: Priority;
    private _angleSp;
    private _thrustSp;
    willUpdate(changed: PropertyValues): void;
    loading: number;
    hasLabelSpacer: boolean;
    angleAdvices: AngleAdvice[];
    thrustAdvices: LinearAdvice[];
    singleDirection: boolean;
    topPropeller: PropellerType;
    bottomPropeller: PropellerType;
    tickmarkStyle: TickmarkStyle;
    starboardPortIndicator: boolean;
    private get angleAdviceRaw();
    private getTickmarks;
    render(): import('lit-html').TemplateResult<1>;
    static styles: import('lit').CSSResult;
    disconnectedCallback(): void;
}
declare global {
    interface HTMLElementTagNameMap {
        'obc-azimuth-thruster': ObcAzimuthThruster;
    }
}
//# sourceMappingURL=azimuth-thruster.d.ts.map