UNPKG

4.83 kBTypeScriptView Raw
1// Type definitions for ag-grid v18.1.2
2// Project: http://www.ag-grid.com/
3// Definitions by: Niall Crosby <https://github.com/ag-grid/>
4import { SerializedTextFilter } from "./textFilter";
5import { SerializedDateFilter } from "./dateFilter";
6import { SerializedNumberFilter } from "./numberFilter";
7import { IComponent } from "../interfaces/iComponent";
8import { Component } from "../widgets/component";
9import { Column } from "../entities/column";
10import { GridApi } from "../gridApi";
11import { SerializedSetFilter } from "../interfaces/iSerializedSetFilter";
12import { CombinedFilter } from "./baseFilter";
13export interface FloatingFilterChange {
14}
15export interface IFloatingFilterParams<M, F extends FloatingFilterChange> {
16 column: Column;
17 onFloatingFilterChanged: (change: F | M) => boolean;
18 currentParentModel: () => M;
19 suppressFilterButton: boolean;
20 debounceMs?: number;
21 api: GridApi;
22}
23export interface IFloatingFilter<M, F extends FloatingFilterChange, P extends IFloatingFilterParams<M, F>> {
24 onParentModelChanged(parentModel: M, combinedModel?: CombinedFilter<M>): void;
25}
26export interface IFloatingFilterComp<M, F extends FloatingFilterChange, P extends IFloatingFilterParams<M, F>> extends IFloatingFilter<M, F, P>, IComponent<P> {
27}
28export interface BaseFloatingFilterChange<M> extends FloatingFilterChange {
29 model: M;
30 apply: boolean;
31}
32export declare abstract class InputTextFloatingFilterComp<M, P extends IFloatingFilterParams<M, BaseFloatingFilterChange<M>>> extends Component implements IFloatingFilter<M, BaseFloatingFilterChange<M>, P> {
33 eColumnFloatingFilter: HTMLInputElement;
34 onFloatingFilterChanged: (change: BaseFloatingFilterChange<M>) => boolean;
35 currentParentModel: () => M;
36 lastKnownModel: M;
37 constructor();
38 init(params: P): void;
39 abstract asParentModel(): M;
40 abstract asFloatingFilterText(parentModel: M): string;
41 abstract parseAsText(model: M): string;
42 onParentModelChanged(parentModel: M, combinedFilter?: CombinedFilter<M>): void;
43 syncUpWithParentFilter(e: KeyboardEvent): void;
44 equalModels(left: any, right: any): boolean;
45}
46export declare class TextFloatingFilterComp extends InputTextFloatingFilterComp<SerializedTextFilter, IFloatingFilterParams<SerializedTextFilter, BaseFloatingFilterChange<SerializedTextFilter>>> {
47 asFloatingFilterText(parentModel: SerializedTextFilter): string;
48 asParentModel(): SerializedTextFilter;
49 parseAsText(model: SerializedTextFilter): string;
50}
51export declare class DateFloatingFilterComp extends Component implements IFloatingFilter<SerializedDateFilter, BaseFloatingFilterChange<SerializedDateFilter>, IFloatingFilterParams<SerializedDateFilter, BaseFloatingFilterChange<SerializedDateFilter>>> {
52 private componentRecipes;
53 private dateComponentPromise;
54 onFloatingFilterChanged: (change: BaseFloatingFilterChange<SerializedDateFilter>) => void;
55 currentParentModel: () => SerializedDateFilter;
56 lastKnownModel: SerializedDateFilter;
57 init(params: IFloatingFilterParams<SerializedDateFilter, BaseFloatingFilterChange<SerializedDateFilter>>): void;
58 private onDateChanged();
59 equalModels(left: SerializedDateFilter, right: SerializedDateFilter): boolean;
60 asParentModel(): SerializedDateFilter;
61 onParentModelChanged(parentModel: SerializedDateFilter): void;
62 private enrichDateInput(type, dateFrom, dateTo, dateComponent);
63}
64export declare class NumberFloatingFilterComp extends InputTextFloatingFilterComp<SerializedNumberFilter, IFloatingFilterParams<SerializedNumberFilter, BaseFloatingFilterChange<SerializedNumberFilter>>> {
65 asFloatingFilterText(toParse: SerializedNumberFilter): string;
66 parseAsText(model: SerializedNumberFilter): string;
67 asParentModel(): SerializedNumberFilter;
68 private asNumber(value);
69}
70export declare class SetFloatingFilterComp extends InputTextFloatingFilterComp<SerializedSetFilter, IFloatingFilterParams<SerializedSetFilter, BaseFloatingFilterChange<SerializedSetFilter>>> {
71 init(params: IFloatingFilterParams<SerializedSetFilter, BaseFloatingFilterChange<SerializedSetFilter>>): void;
72 asFloatingFilterText(parentModel: string[] | SerializedSetFilter): string;
73 parseAsText(model: SerializedSetFilter): string;
74 asParentModel(): SerializedSetFilter;
75 equalModels(left: SerializedSetFilter, right: SerializedSetFilter): boolean;
76}
77export declare class ReadModelAsStringFloatingFilterComp extends InputTextFloatingFilterComp<string, IFloatingFilterParams<string, BaseFloatingFilterChange<string>>> {
78 init(params: IFloatingFilterParams<string, BaseFloatingFilterChange<string>>): void;
79 onParentModelChanged(parentModel: any): void;
80 asFloatingFilterText(parentModel: string): string;
81 parseAsText(model: string): string;
82 asParentModel(): string;
83}