import * as _m0 from "protobufjs/minimal"; import { Bool, Num, Range, Str } from "./base"; import { DeclarationValue, StyleDeclaration } from "./css"; import { Comment } from "./docco"; import { Reference } from "./shared"; export declare const protobufPackage = "ast.pc"; export interface Document { id?: string | undefined; range?: Range | undefined; body?: Node[] | undefined; } export interface Node { import?: Import | undefined; style?: Style | undefined; component?: Component | undefined; docComment?: Comment | undefined; text?: TextNode | undefined; atom?: Atom | undefined; trigger?: Trigger | undefined; element?: Element | undefined; slot?: Slot | undefined; insert?: Insert | undefined; switch?: Switch | undefined; repeat?: Repeat | undefined; condition?: Condition | undefined; script?: Script | undefined; override?: Override | undefined; } export interface Import { id?: string | undefined; range?: Range | undefined; namespace?: string | undefined; path?: string | undefined; } export interface Style { id?: string | undefined; isPublic?: boolean | undefined; name?: string | undefined; variantCombo?: Reference[] | undefined; extends?: Reference[] | undefined; range?: Range | undefined; declarations?: StyleDeclaration[] | undefined; } export interface Component { id?: string | undefined; isPublic?: boolean | undefined; range?: Range | undefined; name?: string | undefined; body?: ComponentBodyItem[] | undefined; comment?: Comment | undefined; } export interface ComponentBodyItem { render?: Render | undefined; variant?: Variant | undefined; script?: Script | undefined; } export interface Script { id?: string | undefined; range?: Range | undefined; parameters?: Parameter[] | undefined; } export interface Variant { id?: string | undefined; range?: Range | undefined; name?: string | undefined; triggers?: TriggerBodyItemCombo[] | undefined; } export interface Render { id?: string | undefined; before?: string | undefined; range?: Range | undefined; node?: Node | undefined; } export interface Condition { id?: string | undefined; range?: Range | undefined; property?: string | undefined; body?: Node[] | undefined; } export interface Switch { id?: string | undefined; range?: Range | undefined; property?: string | undefined; body?: SwitchItem[] | undefined; } export interface SwitchItem { case?: SwitchCase | undefined; default?: SwitchDefault | undefined; } export interface SwitchCase { id?: string | undefined; range?: Range | undefined; condition?: string | undefined; body?: Node[] | undefined; } export interface SwitchDefault { id?: string | undefined; range?: Range | undefined; body?: Node[] | undefined; } export interface Repeat { id?: string | undefined; range?: Range | undefined; property?: string | undefined; body?: Node[] | undefined; } export interface Atom { id?: string | undefined; isPublic?: boolean | undefined; name?: string | undefined; range?: Range | undefined; value?: DeclarationValue | undefined; } export interface Trigger { id?: string | undefined; range?: Range | undefined; name?: string | undefined; isPublic?: boolean | undefined; body?: TriggerBodyItemCombo[] | undefined; } export interface TriggerBodyItemCombo { id?: string | undefined; items?: TriggerBodyItem[] | undefined; range?: Range | undefined; } export interface TriggerBodyItem { str?: Str | undefined; reference?: Reference | undefined; bool?: Bool | undefined; } export interface TextNode { id?: string | undefined; name?: string | undefined; value?: string | undefined; range?: Range | undefined; body?: Node[] | undefined; comment?: Comment | undefined; } export interface Parameter { id?: string | undefined; range?: Range | undefined; name?: string | undefined; value?: SimpleExpression | undefined; } export interface SimpleExpression { str?: Str | undefined; num?: Num | undefined; bool?: Bool | undefined; reference?: Reference | undefined; ary?: Ary | undefined; } export interface Ary { id?: string | undefined; range?: Range | undefined; items?: SimpleExpression[] | undefined; } export interface Element { namespace?: string | undefined; tagName?: string | undefined; tagNameRange?: Range | undefined; name?: string | undefined; parameters?: Parameter[] | undefined; id?: string | undefined; range?: Range | undefined; body?: Node[] | undefined; comment?: Comment | undefined; } export interface Slot { id?: string | undefined; range?: Range | undefined; name?: string | undefined; body?: Node[] | undefined; } export interface Insert { name?: string | undefined; id?: string | undefined; range?: Range | undefined; body?: Node[] | undefined; } export interface Override { id?: string | undefined; path?: string[] | undefined; range?: Range | undefined; body?: OverrideBodyItem[] | undefined; } export interface OverrideBodyItem { style?: Style | undefined; variant?: Variant | undefined; } export declare const Document: { encode(message: Document, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Document; fromJSON(object: any): Document; toJSON(message: Document): unknown; create(base?: DeepPartial): Document; fromPartial(object: DeepPartial): Document; }; export declare const Node: { encode(message: Node, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Node; fromJSON(object: any): Node; toJSON(message: Node): unknown; create(base?: DeepPartial): Node; fromPartial(object: DeepPartial): Node; }; export declare const Import: { encode(message: Import, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Import; fromJSON(object: any): Import; toJSON(message: Import): unknown; create(base?: DeepPartial): Import; fromPartial(object: DeepPartial): Import; }; export declare const Style: { encode(message: Style, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Style; fromJSON(object: any): Style; toJSON(message: Style): unknown; create(base?: DeepPartial