UNPKG

1.83 kBTypeScriptView Raw
1import { SourceSlice } from '../../source/slice';
2import type { FreeVarResolution } from './resolution';
3declare const ThisReference_base: import("./node").TypedNodeConstructor<"This", object & import("./node").BaseNodeFields>;
4/**
5 * Corresponds to `this` at the head of an expression.
6 */
7export declare class ThisReference extends ThisReference_base {
8}
9declare const ArgReference_base: import("./node").TypedNodeConstructor<"Arg", {
10 name: SourceSlice;
11 symbol: number;
12} & import("./node").BaseNodeFields>;
13/**
14 * Corresponds to `@<ident>` at the beginning of an expression.
15 */
16export declare class ArgReference extends ArgReference_base {
17}
18declare const LocalVarReference_base: import("./node").TypedNodeConstructor<"Local", {
19 name: string;
20 isTemplateLocal: boolean;
21 symbol: number;
22} & import("./node").BaseNodeFields>;
23/**
24 * Corresponds to `<ident>` at the beginning of an expression, when `<ident>` is in the current
25 * block's scope.
26 */
27export declare class LocalVarReference extends LocalVarReference_base {
28}
29declare const FreeVarReference_base: import("./node").TypedNodeConstructor<"Free", {
30 name: string;
31 resolution: FreeVarResolution;
32 symbol: number;
33} & import("./node").BaseNodeFields>;
34/**
35 * Corresponds to `<ident>` at the beginning of an expression, when `<ident>` is *not* in the
36 * current block's scope.
37 *
38 * The `resolution: FreeVarResolution` field describes how to resolve the free variable.
39 *
40 * Note: In strict mode, it must always be a variable that is in a concrete JavaScript scope that
41 * the template will be installed into.
42 */
43export declare class FreeVarReference extends FreeVarReference_base {
44}
45export declare type VariableReference = ThisReference | ArgReference | LocalVarReference | FreeVarReference;
46export {};
47//# sourceMappingURL=refs.d.ts.map
\No newline at end of file