import { type Axis, type AxisProps, type RenderResult, type AxisState, type ParsedAxisState } from './axis';
import { type TickFactory } from './ticks';
import { type render } from '../render';
export declare class Canvas implements Axis {
    ctx: render.Context;
    state: ParsedAxisState;
    tickFactory: TickFactory;
    constructor(ctx: render.Context, state: ParsedAxisState);
    setState(state: AxisState): void;
    render(props: AxisProps): RenderResult;
    drawBottom(ctx: AxisProps): RenderResult;
    drawTop(ctx: AxisProps): RenderResult;
    drawLeft(ctx: AxisProps): RenderResult;
    drawRight(ctx: AxisProps): RenderResult;
    private drawLine;
    private drawTicks;
    private maybeDrawGrid;
}
