froebel
Version:
TypeScript utility library
38 lines (37 loc) • 1.09 kB
TypeScript
/**
* Constructs a numeric between `start` and `end` inclusively.
*
* @param step - The step between items of the list. Must be `> 0` for ascending
* and `< 0` for descending ranges. Defaults to `1` if ascending and `-1` if
* descending.
*
* @example
* ```
* range(2, 6) // -> [2, 3, 4, 5, 6]
* range(8, 9, .3) // -> [8, 8.3, 8.6, 8.9]
* range(3, -2) // -> [3, 2, 1, 0, -1, -2]
* ```
*/
export declare function numberRange(start: number, end: number, step?: number): number[];
/**
* Constructs a range between characters.
*
* @example
* ```
* range('a', 'd') // -> ['a', 'b', 'c', 'd']
* range('Z', 'W') // -> ['Z', 'Y', 'X', 'W']
* ```
*/
export declare function alphaRange(start: string, end: string): string[];
declare type RangeSig = {
(...args: Parameters<typeof numberRange>): ReturnType<typeof numberRange>;
(...args: Parameters<typeof alphaRange>): ReturnType<typeof alphaRange>;
};
/**
* Creates a range between two values.
*
* @see {@link numberRange}
* @see {@link alphaRange}
*/
declare const range: RangeSig;
export default range;