import * as postcss from 'postcss'; import { Diagnostics } from './diagnostics'; import { SelectorAstNode } from './selector-utils'; import { MixinValue } from './stylable-value-parsers'; import { Pojo } from './types'; export declare const RESERVED_ROOT_NAME = "root"; export declare class StylableMeta { ast: postcss.Root; diagnostics: Diagnostics; rawAst: postcss.Root; root: 'root'; source: string; namespace: string; imports: Imported[]; vars: VarSymbol[]; keyframes: postcss.AtRule[]; classes: Pojo; elements: Pojo; mappedSymbols: Pojo; customSelectors: Pojo; urls: string[]; outputAst?: postcss.Root; parent?: StylableMeta; transformDiagnostics: Diagnostics | null; constructor(ast: postcss.Root, diagnostics: Diagnostics); } export interface Imported { from: string; defaultExport: string; named: Pojo; overrides: postcss.Declaration[]; theme: boolean; rule: postcss.Rule; fromRelative: string; } export interface StylableDirectives { '-st-root'?: boolean; '-st-compose'?: Array; '-st-states'?: any; '-st-extends'?: ImportSymbol | ClassSymbol | ElementSymbol; '-st-theme'?: boolean; '-st-global'?: SelectorAstNode[]; } export interface ClassSymbol extends StylableDirectives { _kind: 'class'; name: string; alias?: ImportSymbol; scoped?: string; } export interface ElementSymbol extends StylableDirectives { _kind: 'element'; name: string; alias?: ImportSymbol; } export interface ImportSymbol { _kind: 'import'; type: 'named' | 'default'; name: string; import: Imported; context: string; } export interface VarSymbol { _kind: 'var'; name: string; value: string; text: string; valueType: string | null; node: postcss.Node; } export declare type StylableSymbol = ImportSymbol | VarSymbol | ClassSymbol | ElementSymbol; export interface RefedMixin { mixin: MixinValue; ref: ImportSymbol | ClassSymbol; } //# sourceMappingURL=stylable-meta.d.ts.map