1 | import { CapturedArguments, CurriedType, Owner } from '@glimmer/interfaces';
|
2 | import { Reference } from '@glimmer/reference';
|
3 | declare const TYPE: unique symbol;
|
4 | declare const INNER: unique symbol;
|
5 | declare const OWNER: unique symbol;
|
6 | declare const ARGS: unique symbol;
|
7 | declare const RESOLVED: unique symbol;
|
8 | export declare function isCurriedValue(value: unknown): value is CurriedValue<CurriedType>;
|
9 | export declare function isCurriedType<T extends CurriedType>(value: unknown, type: T): value is CurriedValue<T>;
|
10 | export declare class CurriedValue<T extends CurriedType = CurriedType> {
|
11 | [TYPE]: T;
|
12 | [INNER]: object | string | CurriedValue<T>;
|
13 | [OWNER]: Owner;
|
14 | [ARGS]: CapturedArguments | null;
|
15 | [RESOLVED]: boolean;
|
16 |
|
17 | constructor(type: T, inner: object | string | CurriedValue<T>, owner: Owner, args: CapturedArguments | null, resolved?: boolean);
|
18 | }
|
19 | interface ResolvedCurriedValue<T> {
|
20 | definition: T;
|
21 | owner: Owner;
|
22 | resolved: boolean;
|
23 | positional: Reference[] | undefined;
|
24 | named: Record<string, Reference>[] | undefined;
|
25 | }
|
26 | export declare function resolveCurriedValue(curriedValue: CurriedValue<CurriedType.Component>): ResolvedCurriedValue<object | string>;
|
27 | export declare function resolveCurriedValue(curriedValue: CurriedValue<CurriedType.Helper> | CurriedValue<CurriedType.Modifier>): ResolvedCurriedValue<object>;
|
28 | export declare function curry<T extends CurriedType>(type: T, spec: object | string | CurriedValue<T>, owner: Owner, args: CapturedArguments | null, resolved?: boolean): CurriedValue<T>;
|
29 | export {};
|
30 |
|
\ | No newline at end of file |