declare const _default: __VLS_WithTemplateSlots<
  import('vue').DefineComponent<
    {
      customTitle: {
        type: import('vue').PropType<string>
        default: string
      }
      customIcon: {
        type: import('vue').PropType<string>
        default: string
      }
      modelValue: (NumberConstructor | StringConstructor)[]
      options: {
        type: import('vue').PropType<Record<string, any>[]>
        default: () => never[]
      }
      disabled: {
        type: BooleanConstructor
        default: boolean
      }
      iconName: {
        type: import('vue').PropType<string>
        default: string
      }
      title: StringConstructor
      icon: {
        type: import('vue').PropType<string>
        default: string
      }
      iconSize: {
        type: import('vue').PropType<string>
        default: string
      }
      beforeToggle: import('vue').PropType<import('./types').DropMenuItemBeforeToggle>
      valueKey: {
        type: import('vue').PropType<string>
        default: string
      }
      labelKey: {
        type: import('vue').PropType<string>
        default: string
      }
      tipKey: {
        type: import('vue').PropType<string>
        default: string
      }
      selected: {
        type: BooleanConstructor
        default: boolean
      }
      dot: {
        type: NumberConstructor
        default: number
      }
      customStyle: {
        type: import('vue').PropType<string>
        default: string
      }
      customClass: {
        type: import('vue').PropType<string>
        default: string
      }
    },
    {
      getShowPop: () => boolean
      open: () => void
      close: () => void
      toggle: () => void
      getSelected: () => boolean
      getDot: () => number
    },
    unknown,
    {},
    {},
    import('vue').ComponentOptionsMixin,
    import('vue').ComponentOptionsMixin,
    {
      closed: (...args: any[]) => void
      close: (...args: any[]) => void
      open: (...args: any[]) => void
      opened: (...args: any[]) => void
      'update:modelValue': (...args: any[]) => void
      change: (...args: any[]) => void
    },
    string,
    import('vue').PublicProps,
    Readonly<
      import('vue').ExtractPropTypes<{
        customTitle: {
          type: import('vue').PropType<string>
          default: string
        }
        customIcon: {
          type: import('vue').PropType<string>
          default: string
        }
        modelValue: (NumberConstructor | StringConstructor)[]
        options: {
          type: import('vue').PropType<Record<string, any>[]>
          default: () => never[]
        }
        disabled: {
          type: BooleanConstructor
          default: boolean
        }
        iconName: {
          type: import('vue').PropType<string>
          default: string
        }
        title: StringConstructor
        icon: {
          type: import('vue').PropType<string>
          default: string
        }
        iconSize: {
          type: import('vue').PropType<string>
          default: string
        }
        beforeToggle: import('vue').PropType<import('./types').DropMenuItemBeforeToggle>
        valueKey: {
          type: import('vue').PropType<string>
          default: string
        }
        labelKey: {
          type: import('vue').PropType<string>
          default: string
        }
        tipKey: {
          type: import('vue').PropType<string>
          default: string
        }
        selected: {
          type: BooleanConstructor
          default: boolean
        }
        dot: {
          type: NumberConstructor
          default: number
        }
        customStyle: {
          type: import('vue').PropType<string>
          default: string
        }
        customClass: {
          type: import('vue').PropType<string>
          default: string
        }
      }>
    > & {
      onClosed?: ((...args: any[]) => any) | undefined
      onClose?: ((...args: any[]) => any) | undefined
      onOpen?: ((...args: any[]) => any) | undefined
      onOpened?: ((...args: any[]) => any) | undefined
      'onUpdate:modelValue'?: ((...args: any[]) => any) | undefined
      onChange?: ((...args: any[]) => any) | undefined
    },
    {
      customStyle: string
      customClass: string
      options: Record<string, any>[]
      icon: string
      disabled: boolean
      selected: boolean
      iconName: string
      iconSize: string
      valueKey: string
      labelKey: string
      tipKey: string
      customTitle: string
      customIcon: string
      dot: number
    },
    {}
  >,
  {
    default?(_: {}): any
  }
>
export default _default
type __VLS_WithTemplateSlots<T, S> = T & {
  new (): {
    $slots: S
  }
}
