// Type definitions for Underscore-ko 1.2.2 with underscore 1.4 // Project: https://github.com/kamranayub/UnderscoreKO // Definitions by: Maurits Elbers // Definitions: https://github.com/borisyankov/DefinitelyTyped /// /// interface KnockoutObservableArrayFunctions { /**** Collections *****/ each(iterator: _.ListIterator, context?: any): TResult[]; each(iterator: _.ObjectIterator, context?: any): TResult[]; forEach(iterator: _.ObjectIterator, context?: any): TResult[]; forEach(iterator: _.ListIterator, context?: any): TResult[]; map(iterator: _.ListIterator, context?: any): TResult[]; map(iterator: _.ObjectIterator, context?: any): TResult[]; collect(iterator: _.ListIterator, context?: any): TResult[]; collect(iterator: _.ObjectIterator, context?: any): TResult[]; reduce(iterator: _.MemoIterator, memo: TResult, context?: any): TResult; inject(iterator: _.MemoIterator, memo: TResult, context?: any): TResult; foldl(iterator: _.MemoIterator, memo: TResult, context?: any): TResult; reduceRight(iterator: _.MemoIterator, memo: TResult, context?: any): TResult; foldr(iterator: _.MemoIterator, memo: TResult, context?: any): TResult; find(iterator: _.ListIterator, context?: any): T; detect(iterator: _.ListIterator, context?: any): T; filter(iterator: _.ListIterator, context?: any): T[]; filter_(iterator: _.ListIterator, context?: any): T[]; select(iterator: _.ListIterator, context?: any): T[]; select_(iterator: _.ListIterator, context?: any): T[]; where(properties: U): T[]; reject(iterator: _.ListIterator, context?: any): T[]; reject_(iterator: _.ListIterator, context?: any): T[]; all(iterator: _.ListIterator, context?: any): boolean; every(iterator: _.ListIterator, context?: any): boolean; any(iterator?: _.ListIterator, context?: any): boolean; some(iterator?: _.ListIterator, context?: any): boolean; contains(value: T): boolean; include(value: T): boolean; invoke(methodName: string, ...arguments: any[]): any; invoke_(methodName: string, ...arguments: any[]): any; pluck(propertyName: string): T[]; max(iterator: _.ListIterator, context?: any): any; min(iterator: _.ListIterator, context?: any): any; sortBy(iterator: _.ListIterator, context?: any): T[]; sortBy(iterator: string, context?: any): T[]; sortBy_(iterator: _.ListIterator, context?: any): T[]; sortBy_(iterator: string, context?: any): T[]; groupBy(iterator: _.ListIterator): _.Dictionary; groupBy(iterator: string): _.Dictionary; groupBy_(iterator: _.ListIterator): _.Dictionary; groupBy_(iterator: string): _.Dictionary; countBy(iterator: _.ListIterator): _.Dictionary; countBy(iterator: string): _.Dictionary; shuffle(): T[]; shuffle_(): T[]; size(): number; /**** Arrays *****/ first(): T; first(n: number): T[]; head(): T; head(n: number): T[]; take(): T; take(n: number): T[]; initial(n?: number): T[]; last(): T; last(n: number): T[]; rest(n?: number): T[]; rest_(n?: number): T[]; tail(n?: number): T[]; tail_(n?: number): T[]; drop(n?: number): T[]; drop_(n?: number): T[]; compact(): T[]; compact_(): T[]; flatten(shallow?: boolean): any[]; flatten_(shallow?: boolean): any[]; without(...values: T[]): T[]; without_(...values: T[]): T[]; union(...arrays: T[][]): T[]; union_(...arrays: T[][]): T[]; intersection(...arrays: T[][]): T[]; intersection_(...arrays: T[][]): T[]; difference(...others: T[][]): T[]; difference_(...others: T[][]): T[]; uniq(isSorted?: boolean, iterator?: _.ListIterator): T[]; uniq_(isSorted?: boolean, iterator?: _.ListIterator): T[]; unique(isSorted?: boolean, iterator?: _.ListIterator): T[]; unique_(isSorted?: boolean, iterator?: _.ListIterator): T[]; zip(...arrays: any[]): any[]; zip_(...arrays: any[]): any[]; object(): any; indexOf(value: T, isSorted?: boolean): number; lastIndexOf(value: T, fromIndex?: number): number; lastIndexOf(value: T, isSorted?: boolean): number; sortedIndex(value: T, iterator?: _.ListIterator): number; range(stop: number): any[]; range(start: number, stop: number, step?: number): any[]; /**** Chaining *****/ chain(object: any): any; }