1 |
|
2 |
|
3 |
|
4 | import { SerializedTextFilter } from "./textFilter";
|
5 | import { SerializedDateFilter } from "./dateFilter";
|
6 | import { SerializedNumberFilter } from "./numberFilter";
|
7 | import { IComponent } from "../interfaces/iComponent";
|
8 | import { Component } from "../widgets/component";
|
9 | import { Column } from "../entities/column";
|
10 | import { GridApi } from "../gridApi";
|
11 | import { SerializedSetFilter } from "../interfaces/iSerializedSetFilter";
|
12 | import { CombinedFilter } from "./baseFilter";
|
13 | export interface FloatingFilterChange {
|
14 | }
|
15 | export 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 | }
|
23 | export interface IFloatingFilter<M, F extends FloatingFilterChange, P extends IFloatingFilterParams<M, F>> {
|
24 | onParentModelChanged(parentModel: M, combinedModel?: CombinedFilter<M>): void;
|
25 | }
|
26 | export interface IFloatingFilterComp<M, F extends FloatingFilterChange, P extends IFloatingFilterParams<M, F>> extends IFloatingFilter<M, F, P>, IComponent<P> {
|
27 | }
|
28 | export interface BaseFloatingFilterChange<M> extends FloatingFilterChange {
|
29 | model: M;
|
30 | apply: boolean;
|
31 | }
|
32 | export 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 | }
|
46 | export declare class TextFloatingFilterComp extends InputTextFloatingFilterComp<SerializedTextFilter, IFloatingFilterParams<SerializedTextFilter, BaseFloatingFilterChange<SerializedTextFilter>>> {
|
47 | asFloatingFilterText(parentModel: SerializedTextFilter): string;
|
48 | asParentModel(): SerializedTextFilter;
|
49 | parseAsText(model: SerializedTextFilter): string;
|
50 | }
|
51 | export 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 | }
|
64 | export 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 | }
|
70 | export 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 | }
|
77 | export 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 | }
|