/**
 * @license
 * Copyright LOGO YAZILIM SANAYİ VE TİCARET A.Ş.
 *
 * Save to the extent permitted by law, you may not use, copy, modify,
 * distribute or create derivative works of this material or any part
 * of it without the prior written consent of LOGO YAZILIM SANAYİ VE TİCARET A.Ş. Limited.
 * Any reproduction of this material must contain this notice.
 */
import '../custom_typings/logo-elements-usage-statistics';
import '../custom_typings/logo-elements';
// @ts-ignore
import { Constructor } from '@open-wc/dedupe-mixin';
import { DirMixinClass } from './dir-mixin.js';

/**
 * A mixin providing common logic for Vaadin components.
 */
export declare function ElementMixin<T extends Constructor<HTMLElement>>(
  superclass: T
): T & Constructor<DirMixinClass> & Constructor<ElementMixinClass>;

export declare class ElementMixinClass {
  static version: string;

  protected static finalize(): void;
}
