export declare class Common { static now(): number; /** * Returns the list of keys for the given object. * @method keys * @param {} obj * @return {string[]} keys */ static keys(obj: any): string[]; /** * Returns the list of values for the given object. * @method values * @param {} obj * @return {array} Array of the objects property values */ static values(obj: any): any[]; /** * Returns the given value clamped between a minimum and maximum value. * @method clamp * @param {number} value * @param {number} min * @param {number} max * @return {number} The value clamped between min and max inclusive */ static clamp(value: number, min: number, max: number): number; /** * Returns the sign of the given value. * @method sign * @param {number} value * @return {number} -1 if negative, +1 if 0 or positive */ static sign(value: number): 1 | -1; /** * Returns the next unique sequential ID. * @method nextId * @return {Number} Unique sequential ID */ static nextId(): number; /** * A cross browser compatible indexOf implementation. * @method indexOf * @param {array} haystack * @param {object} needle * @return {number} The position of needle in haystack, otherwise -1. */ static indexOf(haystack: any, needle: any): any; static choose(choices: T[], start?: number): T; } export declare const chooseColorScheme: (key: string) => string[]; export declare class Events { /** * Subscribes a callback function to the given object's `eventName`. * @method on * @param {} object * @param {string} eventNames * @param {function} callback */ static on(object: any, name: string, callback: any): void; /** * Removes the given event callback. If no callback, clears all callbacks in `eventNames`. If no `eventNames`, clears all events. * @method off * @param {} object * @param {string} eventNames * @param {function} callback */ static off(object: any, name?: string, callback?: any): void; /** * Fires all the callbacks subscribed to the given object's `eventName`, in the order they subscribed, if any. * @method trigger * @param {} object * @param {string} eventNames * @param {} event */ static trigger(object: any, name: string, event?: any): void; }