webzlp
Version:
A small library using WebUSB to print labels on label printers.
14 lines • 1 kB
TypeScript
type Enumerate<N extends number, Acc extends number[] = []> = Acc['length'] extends N ? Acc[number] : Enumerate<N, [...Acc, Acc['length']]>;
export type NumericRange<F extends number, T extends number> = Exclude<Enumerate<T>, Enumerate<F>>;
export type Percent = NumericRange<0, 101>;
export declare function range(start: number, stop: number, step?: number): number[];
/** Clamp a number to a given range of values. */
export declare function clampToRange(value: number, min: number, max: number): number;
/** Return a number if it's within an inclusive range, otherwise return the default. */
export declare function numberInRange(str: string, min?: number, max?: number): number | undefined;
/** Create an array of a value with count number of items. */
export declare function repeat<T>(val: T, count: number): T[];
/** Round a raw value to the nearest step. */
export declare function roundToNearestStep(value: number, step: number): number;
export {};
//# sourceMappingURL=NumericRange.d.ts.map