import { Element } from "../element.js";
export interface SignalDef {
    name?: string;
    wave?: string;
    data?: string[] | string;
    phase?: number;
    period?: number;
    color?: string;
    lw?: number;
    node?: string;
    level?: string;
    risetime?: number;
    nodealign?: string;
}
export interface WaveDict {
    signal?: unknown[];
    config?: {
        hscale?: number;
    };
    head?: Record<string, unknown>;
    foot?: Record<string, unknown>;
    edge?: string[];
}
export declare class TimingDiagram extends Element {
    private readonly waveData;
    private readonly yheight;
    private readonly ygap;
    private readonly risetime;
    private readonly _fontSize;
    private readonly namecolor;
    private readonly datacolor?;
    private readonly gridcolor;
    private readonly tickcolor;
    private readonly edgecolor;
    private readonly hscale;
    private readonly showGrid;
    constructor(waved: WaveDict, userParams?: Record<string, unknown>);
    private _drawGrid;
    private _drawName;
    private _drawWave;
    private _drawEdges;
    private _drawHeadFoot;
}
