import { HTMLAttributes, ReactChild, FC } from 'react';
import CSS from 'csstype';
import * as styled_components from 'styled-components';
declare type Color = 'danger' | 'success' | 'warning' | 'info' | 'primary' | 'secondary' | CSS.Property.Color;
interface ButtonProps extends HTMLAttributes {
children?: ReactChild;
disabled?: boolean;
size?: 'small' | 'medium' | 'large';
secondary?: boolean;
color?: Color;
}
declare const Button: FC;
interface InputProps extends HTMLAttributes {
color?: Color;
backgroundColor?: Color;
lineColor?: Color;
value?: string;
}
declare const Input: FC;
interface Theme {
colors: {
primary?: Color;
secondary?: Color;
danger?: Color;
success?: Color;
warning?: Color;
info?: Color;
};
custom?: object;
}
declare function createTheme(theme: Theme): Theme;
interface ContactlessProviderProps {
theme?: Theme;
children?: ReactChild;
}
declare const ContactlessProvider: FC;
interface ContainerProps extends HTMLAttributes {
flex?: boolean;
padding?: boolean;
}
declare const Container: FC;
interface BlockProps extends HTMLAttributes {
size?: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12;
}
declare const Block: FC;
interface NavbarProps extends HTMLAttributes {
toggler?: ReactChild;
brand?: ReactChild;
}
interface NavLinkProps extends HTMLAttributes {
to: string;
}
declare const Navbar: FC;
declare const NavLink: FC;
interface GridProps extends HTMLAttributes {
columns?: number | CSS.Property.GridTemplateColumns;
rows?: number | CSS.Property.GridTemplateRows;
gap?: CSS.Property.Gap;
}
declare const Grid: FC;
interface GridItemProps extends HTMLAttributes {
y?: number;
width?: number;
x?: number;
height?: number;
}
declare const GridItem: FC;
interface SelectionProps {
color?: CSS.Property.Color;
background?: CSS.Property.Background;
}
declare const Selection: styled_components.GlobalStyleComponent;
export { Block, Button, ContactlessProvider, Container, Grid, GridItem, Input, NavLink, Navbar, Selection, createTheme };