1 | import { Base16Theme } from 'base16';
|
2 | import * as CSS from 'csstype';
|
3 |
|
4 | export interface Styling {
|
5 | className?: string;
|
6 | style?: CSS.Properties<string | number>;
|
7 | }
|
8 |
|
9 | export type StylingValueFunction = (
|
10 | styling: Styling,
|
11 | ...rest: unknown[]
|
12 | ) => Partial<Styling>;
|
13 |
|
14 | export type StylingValue =
|
15 | | string
|
16 | | CSS.Properties<string | number>
|
17 | | StylingValueFunction;
|
18 |
|
19 | export type StylingConfig = {
|
20 |
|
21 | extend?: string | Base16Theme | StylingValue;
|
22 | } & {
|
23 |
|
24 | [name: string]: StylingValue | string | Base16Theme;
|
25 | };
|
26 |
|
27 | export type Theme = string | Base16Theme | StylingConfig;
|
28 |
|
29 | export type StylingFunction = (
|
30 | keys: (string | false | undefined) | (string | false | undefined)[],
|
31 | ...rest: unknown[]
|
32 | ) => Styling;
|