import * as postcss from 'postcss'; import { Diagnostics } from './diagnostics'; import { SelectorAstNode } from './selector-utils'; import { Imported, RefedMixin, StylableDirectives, StylableMeta } from './stylable-meta'; export * from './stylable-meta'; export declare const processorWarnings: { UNSCOPED_CLASS(name: string): string; UNSCOPED_ELEMENT(name: string): string; FORBIDDEN_DEF_IN_COMPLEX_SELECTOR(name: string): string; ROOT_AFTER_SPACING(): string; DEFAULT_IMPORT_IS_LOWER_CASE(): string; ILLEGAL_PROP_IN_IMPORT(propName: string): string; FROM_PROP_MISSING_IN_IMPORT(): string; STATE_DEFINITION_IN_ELEMENT(): string; STATE_DEFINITION_IN_COMPLEX(): string; REDECLARE_SYMBOL(name: string): string; CANNOT_RESOLVE_EXTEND(name: string): string; CANNOT_RESOLVE_COMPOSE(name: string): string; CANNOT_EXTEND_IN_COMPLEX(): string; CANNOT_COMPOSE_IN_COMPLEX(): string; UNKNOWN_MIXIN(name: string): string; OVERRIDE_MIXIN(): string; OVERRIDE_TYPED_RULE(key: string, name: string): string; }; export declare class StylableProcessor { protected diagnostics: Diagnostics; private resolveNamespace; protected meta: StylableMeta; constructor(diagnostics?: Diagnostics, resolveNamespace?: typeof processNamespace); process(root: postcss.Root): StylableMeta; insertCustomSelectorsStubs(): (postcss.Rule | null)[]; handleCustomSelectors(rule: postcss.Rule): void; protected handleAtRules(root: postcss.Root): void; protected handleRule(rule: SRule): void; protected checkRedeclareSymbol(symbolName: string, node: postcss.Node): void; protected addElementSymbolOnce(name: string, rule: postcss.Rule): void; protected addClassSymbolOnce(name: string, rule: postcss.Rule): void; protected addImportSymbols(importDef: Imported): void; protected addVarSymbols(rule: postcss.Rule): void; protected handleDirectives(rule: SRule, decl: postcss.Declaration): void; protected setClassGlobalMapping(decl: postcss.Declaration, rule: postcss.Rule): void; protected extendTypedRule(node: postcss.Node, selector: string, key: keyof StylableDirectives, value: any): void; protected handleImport(rule: postcss.Rule): Imported; } export declare function createEmptyMeta(root: postcss.Root, diagnostics: Diagnostics): StylableMeta; export declare function processNamespace(namespace: string, source: string): string; export declare function process(root: postcss.Root, diagnostics?: Diagnostics, resolveNamespace?: typeof processNamespace): StylableMeta; export interface SRule extends postcss.Rule { selectorAst: SelectorAstNode; isSimpleSelector: boolean; selectorType: 'class' | 'element' | 'complex'; mixins?: RefedMixin[]; } export interface DeclStylableProps { sourceValue: string; } export interface SDecl extends postcss.Declaration { stylable: DeclStylableProps; } //# sourceMappingURL=stylable-processor.d.ts.map