import { PropertyValues } from "lit"; import { Hertz, Seconds } from "../../models/unitConverters"; import { ChromeTemplate } from "../../mixins/chrome/types"; declare const AxesComponent_base: import("../../helpers/types/mixins").Component & { tagName: string; }; /** * @description * X and Y axis grid lines showing duration and frequency of a spectrogram * * This component must wrap an element that implements the ChromeHost mixin * * @example * ```html * * * * ``` * * @csspart tick - Apply styles to both x and y tick lines * @csspart x-tick - Apply styles to only the x axis tick lines * @csspart y-tick - Apply styles to only the y axis tick lines * * @csspart grid - Apply styles to both x and y grid lines * @csspart x-grid - Apply styles to only the x grid lines * @csspart y-grid - Apply styles to only the y grid lines * * @csspart label - Apply styles to both x and y labels * @csspart x-label - Apply styles to only the x axis label * @csspart y-label - Apply styles to only the x axis label * * @csspart title - Apply styles to both the x and y titles * @csspart x-title - Apply styles to only the x axis title * @csspart y-title - Apply styles to only the y axis title * * @slot - A spectrogram element to add axes to */ export declare class AxesComponent extends AxesComponent_base { static styles: import("lit").CSSResult; static fontCanvas: HTMLCanvasElement; private static labelPadding; private static tickSize; private static titleOffset; /** The step size for the x-axis */ xStepOverride?: Seconds; /** The step size for the y-axis */ yStepOverride?: Hertz; /** The text to show next to the x-axis */ xTitle: string; /** The text to show next to the y-axis */ yTitle: string; /** Whether to show/hide the x-axis title */ showXTitle: boolean; /** Whether to show/hide the y-axis title */ showYTitle: boolean; /** Shows/hides x-axis labels and ticks */ showXAxis: boolean; /** Shows/hides y-axis labels and ticks */ showYAxis: boolean; /** Shows/hides x-axis labels and grid lines */ showXGrid: boolean; /** Shows/hides y-axis labels and grid lines */ showYGrid: boolean; private spectrogram?; private unitConverter?; private emUnitFontSize; private basicLabelFontSize; private xAxisTemplate; private yAxisTemplate; private get labelPadding(); private get tickSize(); private get titleOffset(); firstUpdated(change: PropertyValues): void; protected handleSlotChange(): void; private calculateFontSize; private createGridLinesTemplate; private createAxisLabelsTemplate; private xValues; private yValues; private basicStepper; private melStepper; private totalLabelSize; private willFitStep; private calculateStep; private generateAxisValues; chromeLeft(): ChromeTemplate; chromeBottom(): ChromeTemplate; chromeOverlay(): ChromeTemplate; } declare global { interface HTMLElementTagNameMap { "oe-axes": AxesComponent; } } export {};