2015-04-01 13:45:56 -04:00
|
|
|
// Extend the ES5 standard library with some ES6 features we polyfill at runtime
|
|
|
|
// by loading traceur-runtime.js
|
|
|
|
|
|
|
|
// These are mostly copied from lib.es6.d.ts
|
|
|
|
|
|
|
|
interface String {
|
|
|
|
/**
|
|
|
|
* Returns true if the sequence of elements of searchString converted to a String is the
|
|
|
|
* same as the corresponding elements of this object (converted to a String) starting at
|
|
|
|
* position. Otherwise returns false.
|
|
|
|
*/
|
2015-04-11 15:40:05 -04:00
|
|
|
startsWith(searchString: string, position?: number): boolean;
|
2015-04-01 13:45:56 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
interface NumberConstructor {
|
|
|
|
/**
|
|
|
|
* Returns true if the value passed is an integer, false otherwise.
|
|
|
|
* @param number A numeric value.
|
|
|
|
*/
|
|
|
|
isInteger(number: number): boolean;
|
|
|
|
}
|
|
|
|
|
|
|
|
interface Array<T> {
|
|
|
|
/**
|
|
|
|
* Returns the this object after filling the section identified by start and end with value
|
|
|
|
* @param value value to fill array section with
|
|
|
|
* @param start index to start filling the array at. If start is negative, it is treated as
|
|
|
|
* length+start where length is the length of the array.
|
|
|
|
* @param end index to stop filling the array at. If end is negative, it is treated as
|
|
|
|
* length+end.
|
|
|
|
*/
|
2015-04-11 15:40:05 -04:00
|
|
|
fill(value: T, start?: number, end?: number): T[];
|
2015-04-01 13:45:56 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
// Copied from lib.dom.d.ts and modified
|
|
|
|
interface Map<K, V> {
|
|
|
|
clear(): void;
|
|
|
|
delete (key: K): boolean;
|
2015-04-11 15:40:05 -04:00
|
|
|
forEach(callbackfn: (value: V, index: K, map: Map<K, V>) => void, thisArg?: any): void;
|
2015-05-20 12:48:15 -04:00
|
|
|
keys(): List<K>;
|
|
|
|
values(): List<V>;
|
2015-04-01 13:45:56 -04:00
|
|
|
get(key: K): V;
|
|
|
|
has(key: K): boolean;
|
|
|
|
set(key: K, value: V): Map<K, V>;
|
|
|
|
size: number;
|
|
|
|
}
|
|
|
|
declare var Map: {
|
2015-06-18 00:36:42 -04:00
|
|
|
new (): Map<any, any>;
|
2015-04-01 13:45:56 -04:00
|
|
|
new<K, V>(): Map<K, V>;
|
|
|
|
// alexeagle: PATCHED
|
2015-06-17 19:21:40 -04:00
|
|
|
new<K, V>(m: Map<K, V>): Map<any, any>;
|
|
|
|
new<K, V>(l: List<any>): Map<any, any>;
|
2015-04-01 13:45:56 -04:00
|
|
|
prototype: Map<any, any>;
|
|
|
|
};
|
|
|
|
|
|
|
|
interface Set<T> {
|
|
|
|
add(value: T): Set<T>;
|
|
|
|
clear(): void;
|
|
|
|
delete (value: T): boolean;
|
2015-04-11 15:40:05 -04:00
|
|
|
forEach(callbackfn: (value: T, index: T, set: Set<T>) => void, thisArg?: any): void;
|
2015-04-01 13:45:56 -04:00
|
|
|
has(value: T): boolean;
|
|
|
|
size: number;
|
|
|
|
}
|
|
|
|
declare var Set: {
|
2015-06-18 00:36:42 -04:00
|
|
|
new (): Set<any>;
|
2015-04-01 13:45:56 -04:00
|
|
|
new<T>(): Set<T>;
|
|
|
|
// alexeagle PATCHED
|
|
|
|
new<T>(s: Set<T>): Set<T>;
|
|
|
|
new<T>(l: List<T>): Set<T>;
|
|
|
|
prototype: Set<any>;
|
|
|
|
};
|
|
|
|
|
|
|
|
interface SymbolConstructor {
|
|
|
|
/**
|
|
|
|
* A method that returns the default iterator for an object.Called by the semantics of the
|
|
|
|
* for-of statement.
|
|
|
|
*/
|
|
|
|
iterator: symbol;
|
|
|
|
}
|
|
|
|
declare var Symbol: SymbolConstructor;
|