import { EventEmitter } from "../../stencil-public-runtime";
export declare class Table {
  el: HTMLGlTableElement;
  /**
   * Event emitted when the table sort order is changed
   */
  glTableSort: EventEmitter;
  columns: HTMLGlTableColumnElement[];
  /**
   * Whether or not to disable the default sorting options
   */
  readonly disableDefaultSort: boolean;
  /**
   * The features this table displays
   */
  features: {
    properties: {
      [key: string]: any;
    };
  }[];
  /**
   * The name of the attribute whose value to use as the css class of the row.
   */
  readonly rowClassAttribute: string;
  /**
   * What attribute to sort on
   */
  sortAttribute: string;
  /**
   * What order to use for sorting
   */
  sortOrder: "asc" | "desc";
  componentWillLoad(): void;
  updateColumns(): void;
  private setSort;
  /**
   * Returns the features the table displays in sorted order
   * @returns
   */
  getSortedFeatures(): Promise<{
    properties: {
      [key: string]: any;
    };
  }[]>;
  private sortedFeatures;
  private renderHeader;
  /**
   * Returns the contents of a cell
   * @param feature
   * @param column
   * @param format
   * @returns
   */
  getCellContents(feature: {
    properties: {
      [key: string]: any;
    };
  }, column: HTMLGlTableColumnElement, format: "pdf" | "text"): Promise<any>;
  private renderValue;
  private renderComponentJSX;
  private renderComponentAsText;
  private renderCell;
  private renderRow;
  render(): any;
}
