import { IStyleCache, IStyler, IStylingOptions, ITheme, StyleApplicatorFactory } from '../types'; export interface ISystem { theme: ITheme; viewport: number; } export declare type SystemAPI = ISystem & { applyStyles(componentName: string, props: TProps, componentOptions?: IStylingOptions): TProps; setViewport(viewport: number): void; }; export interface ISystemSettings { cache: IStyleCache; componentStyles?: { [componentName: string]: Array>; }; globalStyles?: Array>; styleApplicatorFactory: StyleApplicatorFactory; theme: ITheme; viewport?: number; } export default function createSystem({ cache, componentStyles, globalStyles, styleApplicatorFactory, theme, viewport, }: ISystemSettings): SystemAPI;