diff --git a/knockout/knockout.d.ts b/knockout/knockout.d.ts index 3c452dede..703f2b48c 100644 --- a/knockout/knockout.d.ts +++ b/knockout/knockout.d.ts @@ -53,7 +53,7 @@ interface KnockoutSubscription { } interface KnockoutSubscribable extends KnockoutSubscribableFunctions { - subscribe(callback: (object: any) => void, target?: any, event?: string): KnockoutSubscription; + subscribe(callback: (param : any) => void, target?: any, event?: string): KnockoutSubscription; subscribe(callback: (newValue: TEvent) => void, target: any, event: string): KnockoutSubscription; extend(requestedExtenders: { [key: string]: any; }): KnockoutSubscribable; getSubscriptionsCount(): number; @@ -83,7 +83,25 @@ interface KnockoutObservableArrayStatic { (value?: T[]): KnockoutObservableArray; } -interface KnockoutObservableArray extends KnockoutObservable, KnockoutObservableArrayFunctions { +interface KnockoutObservableProperties{ + (): T; + (value: T): void; + + peek(): T; + valueHasMutated?:{(): void;}; + valueWillMutate?:{(): void;}; +} + +interface KnockoutObservableArray extends KnockoutSubscribable, KnockoutObservableProperties,KnockoutObservableArrayFunctions { + subscribe(callback: (param : T[]) => void, target?: any, event?: string): KnockoutSubscription; + + subscribe(callback: (param : T[]) => void, target: any, event: string): KnockoutSubscription; + subscribe(callback: (param : T[]) => void, target: any, event: 'change'): KnockoutSubscription; + subscribe(callback: (param : T[]) => void, target: any, event: 'beforeChange'): KnockoutSubscription; + + subscribe(callback: (changes : KnockoutArrayChange[]) => void, target: any, event: string): KnockoutSubscription; + subscribe(callback: (changes : KnockoutArrayChange[]) => void, target: any, event: 'arrayChange'): KnockoutSubscription; + extend(requestedExtenders: { [key: string]: any; }): KnockoutObservableArray; } @@ -93,14 +111,8 @@ interface KnockoutObservableStatic { (value?: T): KnockoutObservable; } -interface KnockoutObservable extends KnockoutSubscribable, KnockoutObservableFunctions { - (): T; - (value: T): void; - - peek(): T; - valueHasMutated?:{(): void;}; - valueWillMutate?:{(): void;}; - +interface KnockoutObservable extends KnockoutSubscribable, KnockoutObservableProperties, KnockoutObservableFunctions { + subscribe(callback: (newValue : T) => void, target?: any, event?: string): KnockoutSubscription; extend(requestedExtenders: { [key: string]: any; }): KnockoutObservable; }