import { ViewBase } from '../core/view-base'; import * as ReworkCSS from '../../css'; import { RuleSet, SelectorCore, SelectorsMatch, ChangeMap, Node } from './css-selector'; import { Keyframes, KeyframeAnimationInfo, KeyframeAnimation } from '../animation/keyframe-animation'; export declare function mergeCssSelectors(): void; export declare function mergeCssKeyframes(): void; export declare function _populateRules(nodes: ReworkCSS.Node[], rulesets: RuleSet[], keyframes: Keyframes[], mediaQueryString?: string): void; export declare function removeTaggedAdditionalCSS(tag: string | number): boolean; export declare function addTaggedAdditionalCSS(cssText: string, tag?: string | number): boolean; export declare const loadAppCSS: any; export declare class CssState { private viewRef; static emptyChangeMap: Readonly>; static emptyPropertyBag: Record; static emptyAnimationArray: ReadonlyArray; static emptyMatch: Readonly>; _onDynamicStateChangeHandler: () => void; _appliedChangeMap: Readonly>; private _appliedPropertyValues; _appliedAnimations: ReadonlyArray; _appliedSelectorsVersion: number; _match: SelectorsMatch; _matchInvalid: boolean; _playsKeyframeAnimations: boolean; constructor(viewRef: WeakRef); /** * Called when a change had occurred that may invalidate the statically matching selectors (class, id, ancestor selectors). * As a result, at some point in time, the selectors matched have to be requerried from the style scope and applied to the view. */ onChange(): void; /** * Checks whether style scope and CSS state selectors are in sync. */ isSelectorsLatestVersionApplied(): boolean; onLoaded(): void; onUnloaded(): void; private updateMatch; private updateDynamicState; private playKeyframeAnimations; private stopKeyframeAnimations; /** * Calculate the difference between the previously applied property values, * and the new set of property values that have to be applied for the provided selectors. * Apply the values and ensure each property setter is called at most once to avoid excessive change notifications. * @param matchingSelectors */ private setPropertyValues; private subscribeForDynamicUpdates; private unsubscribeFromDynamicUpdates; toString(): string; } export declare class StyleScope { private _selectorScope; private _css; private _mergedCssSelectors; private _mergedCssKeyframes; private _localCssSelectors; private _localCssKeyframes; private _localCssSelectorVersion; private _localCssSelectorsAppliedVersion; private _applicationCssSelectorsAppliedVersion; private _cssFiles; get css(): string; set css(value: string); addCss(cssString: string, cssFileName?: string): void; addCssFile(cssFileName: string): void; changeCssFile(cssFileName: string): void; private setCss; private appendCss; getKeyframeAnimationWithName(animationName: string): KeyframeAnimationInfo; ensureSelectors(): number; /** * Increase the application CSS selector version. */ _increaseApplicationCssSelectorVersion(): void; isApplicationCssSelectorsLatestVersionApplied(): boolean; isLocalCssSelectorsLatestVersionApplied(): boolean; private _createSelectors; matchSelectors(view: any): SelectorsMatch; query(node: Node): SelectorCore[]; getSelectorsVersion(): number; private _applyKeyframesToSelectors; getAnimations(ruleset: RuleSet): KeyframeAnimationInfo[]; private findKeyframeRule; } export declare function resolveFileNameFromUrl(url: string, appDirectory: string, fileExists: (name: string) => boolean, importSource?: string): string; export declare const applyInlineStyle: any;