import type { BackgroundVariant } from './types'

declare const _default: __VLS_WithTemplateSlots<
  import('vue').DefineComponent<
    {
      id: {
        type: import('vue').PropType<string>
      }
      variant: {
        type: import('vue').PropType<'lines' | 'dots' | BackgroundVariant>
      }
      gap: {
        type: import('vue').PropType<number | number[]>
      }
      size: {
        type: import('vue').PropType<number>
      }
      lineWidth: {
        type: import('vue').PropType<number>
      }
      patternColor: {
        type: import('vue').PropType<string>
      }
      color: {
        type: import('vue').PropType<string>
      }
      bgColor: {
        type: import('vue').PropType<string>
      }
      height: {
        type: import('vue').PropType<number>
      }
      width: {
        type: import('vue').PropType<number>
      }
      x: {
        type: import('vue').PropType<number>
      }
      y: {
        type: import('vue').PropType<number>
      }
      offset: {
        type: import('vue').PropType<number | [number, number]>
      }
    },
    {},
    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>
        }
        variant: {
          type: import('vue').PropType<'lines' | 'dots' | BackgroundVariant>
        }
        gap: {
          type: import('vue').PropType<number | number[]>
        }
        size: {
          type: import('vue').PropType<number>
        }
        lineWidth: {
          type: import('vue').PropType<number>
        }
        patternColor: {
          type: import('vue').PropType<string>
        }
        color: {
          type: import('vue').PropType<string>
        }
        bgColor: {
          type: import('vue').PropType<string>
        }
        height: {
          type: import('vue').PropType<number>
        }
        width: {
          type: import('vue').PropType<number>
        }
        x: {
          type: import('vue').PropType<number>
        }
        y: {
          type: import('vue').PropType<number>
        }
        offset: {
          type: import('vue').PropType<number | [number, number]>
        }
      }>
    >,
    {},
    {}
  >,
  {
    'pattern-container'?(_: { id: string }): any
    pattern?(_: {}): any
    default?(_: { id: string }): any
  }
>
export default _default
type __VLS_WithTemplateSlots<T, S> = T & {
  new (): {
    $slots: S
  }
}
