// Type definitions for tf-ag-grid v13.3.1-4 // Project: http://www.ag-grid.com/ // Definitions by: Niall Crosby import { SerializedTextFilter } from "./textFilter"; import { SerializedDateFilter } from "./dateFilter"; import { SerializedNumberFilter } from "./numberFilter"; import { IAfterGuiAttachedParams, IComponent } from "../interfaces/iComponent"; import { Component } from "../widgets/component"; import { Column } from "../entities/column"; export interface FloatingFilterChange { } export interface IFloatingFilterParams { column: Column; onFloatingFilterChanged: (change: F | M) => boolean; currentParentModel: () => M; suppressFilterButton: boolean; debounceMs?: number; } export interface IFloatingFilter> { onParentModelChanged(parentModel: M): void; } export interface IFloatingFilterComp> extends IFloatingFilter, IComponent { } export interface BaseFloatingFilterChange extends FloatingFilterChange { model: M; apply: boolean; } export declare abstract class InputTextFloatingFilterComp>> extends Component implements IFloatingFilter, P> { eColumnFloatingFilter: HTMLInputElement; onFloatingFilterChanged: (change: BaseFloatingFilterChange) => boolean; currentParentModel: () => M; lastKnownModel: M; constructor(); init(params: P): void; abstract asParentModel(): M; abstract asFloatingFilterText(parentModel: M): string; onParentModelChanged(parentModel: M): void; syncUpWithParentFilter(e: KeyboardEvent): void; equalModels(left: any, right: any): boolean; } export declare class TextFloatingFilterComp extends InputTextFloatingFilterComp>> { asFloatingFilterText(parentModel: SerializedTextFilter): string; asParentModel(): SerializedTextFilter; } export declare class DateFloatingFilterComp extends Component implements IFloatingFilter, IFloatingFilterParams>> { private componentRecipes; private dateComponent; onFloatingFilterChanged: (change: BaseFloatingFilterChange) => void; currentParentModel: () => SerializedDateFilter; lastKnownModel: SerializedDateFilter; init(params: IFloatingFilterParams>): void; private onDateChanged(); equalModels(left: SerializedDateFilter, right: SerializedDateFilter): boolean; asParentModel(): SerializedDateFilter; onParentModelChanged(parentModel: SerializedDateFilter): void; } export declare class NumberFloatingFilterComp extends InputTextFloatingFilterComp>> { asFloatingFilterText(parentModel: SerializedNumberFilter): string; asParentModel(): SerializedNumberFilter; private asNumber(value); } export declare class SetFloatingFilterComp extends InputTextFloatingFilterComp>> { init(params: IFloatingFilterParams>): void; asFloatingFilterText(parentModel: string[]): string; asParentModel(): string[]; } export declare class ReadModelAsStringFloatingFilterComp extends InputTextFloatingFilterComp>> { init(params: IFloatingFilterParams>): void; onParentModelChanged(parentModel: any): void; asFloatingFilterText(parentModel: string): string; asParentModel(): string; }