import { SkeletonAnimation, SkeletonVariant } from './ez-skeleton.constants';
export declare class EzSkeleton {
  private i18n;
  /**
   * The template to be used for the skeleton. Can be an HTMLElement or a string.
   *
   * @prop {HTMLElement | string} template - The template to be used for the skeleton.
   */
  template: HTMLElement | string;
  /**
   * Number of rows of current skeleton type
   *
   * @memberof Skeleton
   */
  count: number;
  /**
   * Variant of the skeleton - circle or row
   *
   * @type {('circle', 'rect', 'text')}
   * @memberof Skeleton
   */
  variant: SkeletonVariant;
  /**
   * Width of the skeleton ex. 100px, 100%, auto etc.
   *
   * @type {string}
   * @memberof Skeleton
   */
  width: string;
  /**
   * Height of the skeleton ex. 100px, 100%, auto etc.
   *
   * @type {string}
   * @memberof Skeleton
   */
  height: string;
  /**
   * MarginTop of the skeleton ex. 10px, 0 etc.
   *
   * @type {string}
   * @memberof Skeleton
   */
  marginTop: string;
  /**
   * MarginRight of the skeleton ex. 10px, 0 etc.
   *
   * @type {string}
   * @memberof Skeleton
   */
  marginRight: string;
  /**
   * MarginBottom of the skeleton ex. 10px, 0 etc.
   *
   * @type {string}
   * @memberof Skeleton
   */
  marginBottom: string;
  /**
   * MarginLeft of the skeleton ex. 10px, 0 etc.
   *
   * @type {string}
   * @memberof Skeleton
   */
  marginLeft: string;
  /**
   * Animation type
   *
   * @type {('progress' | 'pulse' | 'false')}
   * @memberof Skeleton
   */
  animation: SkeletonAnimation;
  private items;
  componentWillLoad(): Promise<void>;
  componentWillUpdate(): void;
  private initializeItems;
  private getSkeletonConfig;
  private validateVariant;
  private validateAnimation;
  private renderSkeletonTemplate;
  private renderSkeletonItem;
  private renderSkeletonSpan;
  render(): string | any[] | HTMLElement;
}
