import { StrokeStyle } from '../../common/configs'; import { Edge, EdgePosition, Edges, Point } from '../../common/types'; import { EdgeState } from '../../models/edge'; import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue'; interface Props { edgeId?: string; edge?: Edge; edges?: Edges; state: EdgeState; isSummarized: boolean; } interface BaseEdgeSlotProps { edges: Edges; stroke: StrokeStyle; position: EdgePosition; center: Point; hovered: boolean; selected: boolean; scale: number; length: number; pointAtLength: (distance: number) => Point; } interface SingleEdgeSlotProps { isSummarized: false; edgeId: string; edge: Edge; } interface SummarizedEdgeSlotProps { isSummarized: true; } export type EdgeOverlaySlotProps = BaseEdgeSlotProps & (SingleEdgeSlotProps | SummarizedEdgeSlotProps); type __VLS_Slots = { default: (props: EdgeOverlaySlotProps) => any; }; declare const __VLS_base: DefineComponent & Readonly<{}>, { edges: Edges; edge: Edge; edgeId: string; }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>; declare const __VLS_export: __VLS_WithSlots; declare const _default: typeof __VLS_export; export default _default; type __VLS_WithSlots = T & { new (): { $slots: S; }; };