import { type PropType } from "vue";
import { type CircuitJson, type RenderOptions, type SchemdrawController, type ElementInfo, type CanvasPoint } from "../index.js";
export declare const CircuitDiagram: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    circuit: {
        type: PropType<CircuitJson>;
        required: true;
    };
    options: {
        type: PropType<RenderOptions>;
        default: () => {};
    };
    interactive: {
        type: BooleanConstructor;
        default: boolean;
    };
}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
    [key: string]: any;
}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ["element-click", "element-hover", "element-leave", "element-select", "canvas-click", "ready"], "element-click" | "element-hover" | "element-leave" | "element-select" | "canvas-click" | "ready", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    circuit: {
        type: PropType<CircuitJson>;
        required: true;
    };
    options: {
        type: PropType<RenderOptions>;
        default: () => {};
    };
    interactive: {
        type: BooleanConstructor;
        default: boolean;
    };
}>> & Readonly<{
    onReady?: ((...args: any[]) => any) | undefined;
    "onElement-click"?: ((...args: any[]) => any) | undefined;
    "onElement-hover"?: ((...args: any[]) => any) | undefined;
    "onElement-leave"?: ((...args: any[]) => any) | undefined;
    "onElement-select"?: ((...args: any[]) => any) | undefined;
    "onCanvas-click"?: ((...args: any[]) => any) | undefined;
}>, {
    interactive: boolean;
    options: RenderOptions;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
export type { CircuitJson, RenderOptions, SchemdrawController, ElementInfo, CanvasPoint };
