@daimo/pay
Version:
Seamless crypto payments. Onboard users from any chain, any coin into your app with one click.
81 lines (80 loc) • 1.62 kB
TypeScript
type RGB = `rgb(${number}, ${number}, ${number})`;
type RGBA = `rgba(${number}, ${number}, ${number}, ${number})`;
type HEX = `#${string}`;
type Color = RGB | RGBA | HEX;
type BorderRadius = number | string;
type Font = {
family?: string;
};
interface Button {
font?: Font;
color?: Color;
background?: Color;
border?: Color;
borderRadius?: BorderRadius;
hover?: this;
}
interface Text {
color?: Color;
font?: Font;
hover?: this;
}
export type Theme = {
font?: Font;
primary?: {
color?: Color;
colorSelected?: Color;
};
error?: {
color?: Color;
};
text?: {
primary?: Text;
secondary?: Text;
error?: Color;
valid?: Color;
};
navigation?: {
color?: Color;
};
buttons?: {
primary?: Button;
secondary?: Button;
};
modal?: {
divider: Color;
background?: Color;
boxShadow?: string;
borderRadius?: BorderRadius;
};
overlay?: {
background?: Color;
backdropFilter?: string;
};
tooltips?: {
color?: Color;
background?: Color;
hover?: {
color?: Color;
background?: Color;
};
};
qrCode?: {
background?: Color;
accentColor?: Color;
};
};
export type ThemeMode = {
preferred: "light" | "dark";
light: Theme;
dark: Theme;
};
export type CustomTheme = {
daimoPay: {
options?: {
iconStyle?: "light" | "regular" | "heavy";
};
theme?: Theme | ThemeMode;
};
};
export {};