1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 | export type Color = [number, number, number, number];
|
9 |
|
10 | export interface ColorDescriptor {
|
11 | model: 'rgb' | 'hsl' | 'hwb';
|
12 | value: Color;
|
13 | }
|
14 |
|
15 | export function get(colorString: string): ColorDescriptor | null;
|
16 |
|
17 | export namespace get {
|
18 | function hsl<TColorStr extends string | null>(colorString: TColorStr): TColorStr extends string ? Color : null;
|
19 | function hwb<TColorStr extends string | null>(colorString: TColorStr): TColorStr extends string ? Color : null;
|
20 | function rgb<TColorStr extends string | null>(colorString: TColorStr): TColorStr extends string ? Color : null;
|
21 | }
|
22 |
|
23 | export namespace to {
|
24 | function hex(...args: Array<number | number[]>): string;
|
25 | function rgb(...args: Array<number | number[]>): string;
|
26 | namespace rgb {
|
27 | function percent(...args: Array<number | number[]>): string;
|
28 | }
|
29 | function keyword(...args: Array<number | number[]>): string;
|
30 | function hsl(...args: Array<number | number[]>): string;
|
31 | function hwb(...args: Array<number | number[]>): string;
|
32 | }
|