import { AllPropertiesTypes, PhysicalPropertyName, PropertyName } from './styleProperties'; export type RulesetChangeEvent = { states: Set; properties: Set; }; export declare class Ruleset { private propertyNames; private listeners; rules: Array<{ states: Set; propertyValues: Map; }>; reset: (propertyValues: Map | Partial) => boolean; set: (propertyValues: Map | Partial) => boolean; addChangeListener(cb: (e: RulesetChangeEvent) => void): void; removeChangeListener(cb: (e: RulesetChangeEvent) => void): void; keys(): Set<"height" | "width" | "left" | "top" | "alignContent" | "alignItems" | "alignSelf" | "backgroundClip" | "backgroundColor" | "borderColor" | "bottom" | "color" | "display" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "fontStyle" | "fontWeight" | "marginBottom" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "overflow" | "overflowWrap" | "paddingBottom" | "paddingLeft" | "paddingRight" | "paddingTop" | "pointerEvents" | "position" | "right" | "textAlign" | "textDecoration" | "whiteSpace" | "zIndex" | "borderLeftCharacter" | "borderRightCharacter" | "borderTopCharacter" | "borderBottomCharacter" | "borderTopLeftCharacter" | "borderTopRightCharacter" | "borderBottomLeftCharacter" | "borderBottomRightCharacter" | "backgroundCharacter" | "focusEvents">; when(states: Set): { values: Map<"height" | "width" | "left" | "top" | "alignContent" | "alignItems" | "alignSelf" | "backgroundClip" | "backgroundColor" | "borderColor" | "bottom" | "color" | "display" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "fontStyle" | "fontWeight" | "marginBottom" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "overflow" | "overflowWrap" | "paddingBottom" | "paddingLeft" | "paddingRight" | "paddingTop" | "pointerEvents" | "position" | "right" | "textAlign" | "textDecoration" | "whiteSpace" | "zIndex" | "borderLeftCharacter" | "borderRightCharacter" | "borderTopCharacter" | "borderBottomCharacter" | "borderTopLeftCharacter" | "borderTopRightCharacter" | "borderBottomLeftCharacter" | "borderBottomRightCharacter" | "backgroundCharacter" | "focusEvents", any>; reset: (propertyValues: Map | Partial) => boolean; set: (propertyValues: Map | Partial) => boolean; }; }