1 |
|
2 | import { EventEmitter } from 'events';
|
3 | import { Formatter } from './formatters/common';
|
4 | export interface IWatched extends Object {
|
5 | $$watchers?: {
|
6 | [key: string]: Binding;
|
7 | };
|
8 | }
|
9 | export interface EventArgs {
|
10 | source: Binding;
|
11 | target: any;
|
12 | eventArgs: {
|
13 | fieldName: string;
|
14 | value: any;
|
15 | };
|
16 | }
|
17 | export declare class Binding extends EventEmitter {
|
18 | protected _expression: string;
|
19 | private _target;
|
20 | static defineProperty(target: any, property: string | symbol, value?: any): Binding;
|
21 | static readonly ChangingFieldEventName = "fieldChanging";
|
22 | static readonly ChangedFieldEventName = "fieldChanged";
|
23 | static readonly ErrorEventName = "bindingError";
|
24 | static unbindify<T>(element: T): Partial<T>;
|
25 | constructor(_expression: string, _target: IWatched, register?: boolean);
|
26 | formatter: Formatter<any>;
|
27 | get expression(): string;
|
28 | get target(): IWatched;
|
29 | set target(value: IWatched);
|
30 | private evaluator;
|
31 | onChanging(handler: (ev: EventArgs) => void): void;
|
32 | onChanged(handler: (ev: EventArgs) => void, doNotTriggerHandler?: boolean): void;
|
33 | onError(handler: (ev: EventArgs) => void): void;
|
34 | private registeredBindings;
|
35 | pipe(binding: Binding): void;
|
36 | getValue(): any;
|
37 | register(): void;
|
38 | apply(elements: any, doNotRegisterEvents?: boolean): void;
|
39 | static getSetter(target: IWatched, expression: string): (value: any, source: any, doNotTriggerEvents?: boolean) => Promise<unknown>;
|
40 | setValue(value: any, source?: Binding, doNotTriggerEvents?: boolean): void;
|
41 | }
|
42 | export declare class PromiseBinding extends Binding {
|
43 | constructor(expression: string, target: PromiseLike<any>);
|
44 | }
|
45 | export declare class ObservableArray<T> extends EventEmitter {
|
46 | array: Array<T>;
|
47 | constructor(array: Array<T>);
|
48 | get length(): number;
|
49 | push(...items: T[]): void;
|
50 | shift(): void;
|
51 | pop(): void;
|
52 | unshift: (item: any) => void;
|
53 | replace(index: any, item: any): void;
|
54 | init(): void;
|
55 | indexOf(searchElement: T, fromIndex?: number): number;
|
56 | toString(): string;
|
57 | }
|
58 | export interface ObservableArrayEventArgs<T> {
|
59 | action: 'init' | 'push' | 'shift' | 'pop' | 'unshift' | 'replace';
|
60 | newItems?: T[];
|
61 | oldItems?: T[];
|
62 | }
|
63 | export declare class WatchBinding extends Binding {
|
64 | constructor(expression: string, target: any, interval: number);
|
65 | private lastValue;
|
66 | private check;
|
67 | }
|