import { type Panel } from './types'
declare const _default: __VLS_WithTemplateSlots<
  import('vue').DefineComponent<
    {
      customHeaderClass: {
        type: import('vue').PropType<string>
        default: string
      }
      modelValue: {
        type: BooleanConstructor
        required: true
        default: boolean
      }
      actions: {
        type: import('vue').PropType<import('./types').Action[]>
        default: () => never[]
      }
      panels: {
        type: import('vue').PropType<(Panel | Panel[])[]>
        default: () => never[]
      }
      title: StringConstructor
      cancelText: StringConstructor
      closeOnClickAction: {
        type: BooleanConstructor
        default: boolean
      }
      closeOnClickModal: {
        type: BooleanConstructor
        default: boolean
      }
      duration: {
        type: NumberConstructor
        default: number
      }
      zIndex: {
        type: NumberConstructor
        default: number
      }
      lazyRender: {
        type: BooleanConstructor
        default: boolean
      }
      safeAreaInsetBottom: {
        type: BooleanConstructor
        default: boolean
      }
      customStyle: {
        type: import('vue').PropType<string>
        default: string
      }
      customClass: {
        type: import('vue').PropType<string>
        default: string
      }
    },
    {},
    unknown,
    {},
    {},
    import('vue').ComponentOptionsMixin,
    import('vue').ComponentOptionsMixin,
    {
      select: (...args: any[]) => void
      'click-modal': (...args: any[]) => void
      cancel: (...args: any[]) => void
      closed: (...args: any[]) => void
      close: (...args: any[]) => void
      open: (...args: any[]) => void
      opened: (...args: any[]) => void
      'update:modelValue': (...args: any[]) => void
    },
    string,
    import('vue').PublicProps,
    Readonly<
      import('vue').ExtractPropTypes<{
        customHeaderClass: {
          type: import('vue').PropType<string>
          default: string
        }
        modelValue: {
          type: BooleanConstructor
          required: true
          default: boolean
        }
        actions: {
          type: import('vue').PropType<import('./types').Action[]>
          default: () => never[]
        }
        panels: {
          type: import('vue').PropType<(Panel | Panel[])[]>
          default: () => never[]
        }
        title: StringConstructor
        cancelText: StringConstructor
        closeOnClickAction: {
          type: BooleanConstructor
          default: boolean
        }
        closeOnClickModal: {
          type: BooleanConstructor
          default: boolean
        }
        duration: {
          type: NumberConstructor
          default: number
        }
        zIndex: {
          type: NumberConstructor
          default: number
        }
        lazyRender: {
          type: BooleanConstructor
          default: boolean
        }
        safeAreaInsetBottom: {
          type: BooleanConstructor
          default: boolean
        }
        customStyle: {
          type: import('vue').PropType<string>
          default: string
        }
        customClass: {
          type: import('vue').PropType<string>
          default: string
        }
      }>
    > & {
      onSelect?: ((...args: any[]) => any) | undefined
      'onClick-modal'?: ((...args: any[]) => any) | undefined
      onCancel?: ((...args: any[]) => any) | undefined
      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
    },
    {
      customHeaderClass: string
      actions: import('./types').Action[]
      panels: (Panel | Panel[])[]
      closeOnClickAction: boolean
      closeOnClickModal: boolean
      duration: number
      zIndex: number
      lazyRender: boolean
      safeAreaInsetBottom: boolean
      customStyle: string
      customClass: string
    },
    {}
  >,
  {
    default?(_: {}): any
  }
>
export default _default

type __VLS_WithTemplateSlots<T, S> = T & {
  new (): {
    $slots: S
  }
}
