import type { Position } from '../../types'

declare const _default: __VLS_WithTemplateSlots<
  import('vue').DefineComponent<
    {
      id: {
        type: import('vue').PropType<string>
      }
      type: {
        type: import('vue').PropType<import('../../types').HandleType>
      }
      position: {
        type: import('vue').PropType<Position>
      }
      isValidConnection: {
        type: import('vue').PropType<import('../../types').ValidConnectionFunc>
      }
      connectable: {
        type: import('vue').PropType<import('../../types').HandleConnectable>
      }
      connectableStart: {
        type: import('vue').PropType<boolean>
      }
      connectableEnd: {
        type: import('vue').PropType<boolean>
      }
    },
    {
      handleClick: (event: MouseEvent) => void
      handlePointerDown: (event: import('../../types').MouseTouchEvent) => void
      onClick: (event: MouseEvent) => void
      onPointerDown: (event: MouseEvent | TouchEvent) => void
    },
    unknown,
    {},
    {},
    import('vue').ComponentOptionsMixin,
    import('vue').ComponentOptionsMixin,
    {},
    string,
    import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps,
    Readonly<
      import('vue').ExtractPropTypes<{
        id: {
          type: import('vue').PropType<string>
        }
        type: {
          type: import('vue').PropType<import('../../types').HandleType>
        }
        position: {
          type: import('vue').PropType<Position>
        }
        isValidConnection: {
          type: import('vue').PropType<import('../../types').ValidConnectionFunc>
        }
        connectable: {
          type: import('vue').PropType<import('../../types').HandleConnectable>
        }
        connectableStart: {
          type: import('vue').PropType<boolean>
        }
        connectableEnd: {
          type: import('vue').PropType<boolean>
        }
      }>
    >,
    {},
    {}
  >,
  {
    default?(_: { id: string | undefined }): any
  }
>
export default _default
type __VLS_WithTemplateSlots<T, S> = T & {
  new (): {
    $slots: S
  }
}
