import * as acorn from 'acorn'; /** * AST node produced for a Companion variable reference `$(label:name)`. * The `name` is the raw inner string, kept opaque - the evaluator splits it on `:` exactly as before. */ export interface CompanionVariableExpression extends acorn.Node { type: 'CompanionVariable'; name: string; } /** * Acorn parser plugin that parses Companion's `$(label:name)` variable references natively. * * GOTCHA: we hook `readToken`, NOT `getTokenFromCode`. `$` is an identifier-start char, so acorn * routes it to `readWord` before `getTokenFromCode` runs - it would read `$` as an identifier and * then choke on the `:` inside. Intercepting in `readToken` runs early enough to grab the whole thing. */ export declare function companionVariablesAcornPlugin(BaseParser: typeof acorn.Parser): typeof acorn.Parser; //# sourceMappingURL=CompanionVariables.d.ts.map