import { EventEmitter } from '../../../../stencil-public-runtime';
import { SnkFilterItemConfig } from '../snk-filter-item';
import { EPresentationMode } from './enum/presentationMode';
export declare class SnkFilterPeriod {
  _element: HTMLElement;
  _startInterval: HTMLEzNumberInputElement;
  _endInterval: HTMLEzNumberInputElement;
  _startIntervalLabel: string;
  _endIntervalLabel: string;
  _toLabel: string;
  _numberElement: HTMLEzNumberInputElement;
  /**
   * Define as configurações do componente snk-filter-number
   */
  config: SnkFilterItemConfig;
  /**
   * Usado pra flexibilizar os verbetes e mensagens de acordo com o SnkMessageBuilder.
   */
  getMessage: (key: string, props?: any) => string;
  /**
   * Define o valor do componente snk-filter-number
   */
  value: FilterNumberValueType;
  /**
   * Define a variação do componente
   */
  presentationMode: EPresentationMode;
  /**
   * Usado para exibir mensagens de erro.
   */
  errorMessage: string;
  /**
   * Emitido quando acontece a alteração de valor do componente snk-filter-number
   */
  ezInputListener(evt: CustomEvent<number>): void;
  /**
  * Emitido quando o valor do filtro é alterado.
  */
  valueChanged: EventEmitter<FilterNumberValueType>;
  /**
   * Exibe o componente snk-filter-number
   */
  show(): Promise<void>;
  /**
   * Define o foco no componente snk-filter-number
   */
  setFocus(): Promise<void>;
  /**
   * Limpa o valor do componente restaurando o valor original da configuração.
   */
  clearValue(): Promise<void>;
  private getIntervalValue;
  private buildLabel;
  private getVariation;
  componentWillLoad(): void;
  componentDidLoad(): void;
  render(): any;
}
type FilterNumberValueType = {
  start: number;
  end: number;
} | number | undefined;
export {};
