@age/quantum
Version:
Catho react components
46 lines (34 loc) • 1.04 kB
TypeScript
import React from 'react';
export interface SkeletonButtonProps {
size: 'xsmall' | 'small' | 'medium' | 'large';
theme: {
spacing?: object;
};
}
export type SkeletonButton = React.ComponentType<SkeletonButtonProps>;
export type SkeletonCircle = React.ComponentType;
export type SkeletonText = React.ComponentType;
export interface SkeletonTagProps {
size: 'xsmall' | 'small' | 'medium' | 'large';
theme: {
spacing?: object;
baseFontSize?: number;
};
}
export type SkeletonTag = React.ComponentType<SkeletonTagProps>;
export interface SkeletonProps {
type?: 'rect' | 'circle' | 'text' | 'button' | 'tag';
width?: string;
height?: string;
size?: 'xsmall' | 'small' | 'medium' | 'large';
theme?: {
spacing?: object;
baseFontSize?: number;
};
}
export default class Skeleton extends React.Component<SkeletonProps> {
static Button: SkeletonButton;
static Circle: SkeletonCircle;
static Text: SkeletonText;
static Tag: SkeletonTag;
}