import { CSSProperties } from 'glamor';
import { BaseComponentStateTypeOption, BaseComponentTypeOption, CssPropertyStyle, StyleType, TagPreviewOption } from './style.interface';
export declare class Style {
    id: string;
    variant: string;
    baseComponent: BaseComponentTypeOption;
    value: CssPropertyStyle[];
    state: BaseComponentStateTypeOption;
    previewWithTag?: TagPreviewOption;
    /**
     * The theme id for which this style is for
     */
    themeId?: string;
    /**
     * When style is copied or imported from another theme it will have a
     * reference to the original theme id
     */
    referenceThemeId?: string;
    constructor(props: StyleType);
    get objectify(): StyleType;
    get flatten(): object;
    get code(): object;
    get cssProperties(): CSSProperties;
    get cssPropertiesWithTokens(): CSSProperties;
    setId(key: string): void;
    addStyle(style: CssPropertyStyle): void;
    setValue(value: CssPropertyStyle[]): void;
    setVariant(value: string): void;
    setBaseComponent(baseComponent: string): void;
    setPreviewWithTag(tag: TagPreviewOption): void;
    setReferenceThemeId(themeId: string): void;
    setThemeId(themeId: string): void;
}
