declare const _default: __VLS_WithTemplateSlots<
  import('vue').DefineComponent<
    {
      active: {
        type: BooleanConstructor
        default: boolean
      }
      type: {
        type: import('vue').PropType<import('./types').FabType>
        default: import('./types').FabType
      }
      position: {
        type: import('vue').PropType<import('./types').FabPosition>
        default: import('./types').FabPosition
      }
      direction: {
        type: import('vue').PropType<import('./types').FabDirection>
        default: import('./types').FabDirection
      }
      disabled: {
        type: BooleanConstructor
        default: boolean
      }
      inactiveIcon: {
        type: import('vue').PropType<string>
        default: string
      }
      activeIcon: {
        type: import('vue').PropType<string>
        default: string
      }
      zIndex: {
        type: NumberConstructor
        default: number
      }
      draggable: {
        type: BooleanConstructor
        default: boolean
      }
      gap: {
        type: import('vue').PropType<import('./types').FabGap>
        default: () => {}
      }
      customStyle: {
        type: import('vue').PropType<string>
        default: string
      }
      customClass: {
        type: import('vue').PropType<string>
        default: string
      }
    },
    {
      open: () => void
      close: () => void
    },
    unknown,
    {},
    {},
    import('vue').ComponentOptionsMixin,
    import('vue').ComponentOptionsMixin,
    {
      'update:active': (...args: any[]) => void
    },
    string,
    import('vue').PublicProps,
    Readonly<
      import('vue').ExtractPropTypes<{
        active: {
          type: BooleanConstructor
          default: boolean
        }
        type: {
          type: import('vue').PropType<import('./types').FabType>
          default: import('./types').FabType
        }
        position: {
          type: import('vue').PropType<import('./types').FabPosition>
          default: import('./types').FabPosition
        }
        direction: {
          type: import('vue').PropType<import('./types').FabDirection>
          default: import('./types').FabDirection
        }
        disabled: {
          type: BooleanConstructor
          default: boolean
        }
        inactiveIcon: {
          type: import('vue').PropType<string>
          default: string
        }
        activeIcon: {
          type: import('vue').PropType<string>
          default: string
        }
        zIndex: {
          type: NumberConstructor
          default: number
        }
        draggable: {
          type: BooleanConstructor
          default: boolean
        }
        gap: {
          type: import('vue').PropType<import('./types').FabGap>
          default: () => {}
        }
        customStyle: {
          type: import('vue').PropType<string>
          default: string
        }
        customClass: {
          type: import('vue').PropType<string>
          default: string
        }
      }>
    > & {
      'onUpdate:active'?: ((...args: any[]) => any) | undefined
    },
    {
      zIndex: number
      customStyle: string
      customClass: string
      type: import('./types').FabType
      position: import('./types').FabPosition
      disabled: boolean
      direction: import('./types').FabDirection
      active: boolean
      inactiveIcon: string
      activeIcon: string
      draggable: boolean
      gap: Partial<Record<import('./types').FabDirection, number>>
    },
    {}
  >,
  {
    default?(_: {}): any
  }
>
export default _default
type __VLS_WithTemplateSlots<T, S> = T & {
  new (): {
    $slots: S
  }
}
