export interface IAtomComponent { element: any; viewModel: any; localViewModel: any; data: any; app: { callLater: (f: () => void) => void; }; runAfterInit(f: () => void): void; setLocalValue(e: any, name: string, value: any): void; bindEvent(e: any, name: string, handler: any): any; bind(e: any, name: string, path: any, twoWays: boolean, converter: any, source?: any): any; } /** * Bindings needs to be cloned... */ export declare type bindingFunction = (control: T, e?: any) => any; export interface IData extends IAtomComponent { data: T; } export interface IVM extends IAtomComponent { viewModel: T; } export interface ILVM extends IAtomComponent { localViewModel: T; } export interface IBinder { presenter(name?: string): Bind; event(handler: (control: T, e?: CustomEvent) => void): any; oneTime(path: bindingFunction): Bind; oneWay(path: bindingFunction): Bind; twoWays(path: bindingFunction, events?: string[]): Bind; } export default class Bind { readonly setupFunction: ((name: string, b: Bind, c: IAtomComponent, e: any, self?: any) => void); readonly name?: string; readonly eventList?: string[]; static forData(): IBinder>; static forViewModel(): IBinder>; static forLocalViewModel(): IBinder>; static presenter(name?: string): Bind; static event(sourcePath: (control: T, e?: CustomEvent) => void): any; static oneTime(sourcePath: bindingFunction): Bind; static oneWay(sourcePath: bindingFunction): Bind; static twoWays(sourcePath: bindingFunction, events?: string[]): Bind; readonly sourcePath: bindingFunction; readonly pathList: string[][]; readonly thisPathList: string[][]; readonly combined: string[][]; constructor(setupFunction: ((name: string, b: Bind, c: IAtomComponent, e: any, self?: any) => void), sourcePath: bindingFunction, name?: string, eventList?: string[]); } //# sourceMappingURL=Bind.d.ts.map