TypeScript/tests/baselines/reference/jsFileESModuleWithEnumTag.types
Matthew Pietz dcaefe732e
Accept generics for defineProperty (#42424)
* Accept generics for defineProperty

Both `Object.defineProperty()` and `Object.defineProperties()` return their
first argument. Use a generic so that typings can be passed through.

* Update baselines

* update missed baseline

Co-authored-by: Nathan Shively-Sanders <293473+sandersn@users.noreply.github.com>
2021-03-11 07:57:42 -08:00

53 lines
2 KiB
Plaintext

=== tests/cases/compiler/jsFileESModuleWithEnumTag.js ===
export {}; // mark as module
/** @enum {number} */
const ChangeDetectionStrategy = {
>ChangeDetectionStrategy : { OnPush: number; Default: number; }
>{ OnPush: 0, Default: 1,} : { OnPush: number; Default: number; }
OnPush: 0,
>OnPush : number
>0 : 0
Default: 1,
>Default : number
>1 : 1
};
ChangeDetectionStrategy[ChangeDetectionStrategy.OnPush] = 'OnPush';
>ChangeDetectionStrategy[ChangeDetectionStrategy.OnPush] = 'OnPush' : "OnPush"
>ChangeDetectionStrategy[ChangeDetectionStrategy.OnPush] : error
>ChangeDetectionStrategy : { OnPush: number; Default: number; }
>ChangeDetectionStrategy.OnPush : number
>ChangeDetectionStrategy : { OnPush: number; Default: number; }
>OnPush : number
>'OnPush' : "OnPush"
ChangeDetectionStrategy[ChangeDetectionStrategy.Default] = 'Default';
>ChangeDetectionStrategy[ChangeDetectionStrategy.Default] = 'Default' : "Default"
>ChangeDetectionStrategy[ChangeDetectionStrategy.Default] : error
>ChangeDetectionStrategy : { OnPush: number; Default: number; }
>ChangeDetectionStrategy.Default : number
>ChangeDetectionStrategy : { OnPush: number; Default: number; }
>Default : number
>'Default' : "Default"
Object.defineProperty(ChangeDetectionStrategy, "aField", {value: 42});
>Object.defineProperty(ChangeDetectionStrategy, "aField", {value: 42}) : { OnPush: number; Default: number; }
>Object.defineProperty : <T>(o: T, p: PropertyKey, attributes: PropertyDescriptor & ThisType<any>) => T
>Object : ObjectConstructor
>defineProperty : <T>(o: T, p: PropertyKey, attributes: PropertyDescriptor & ThisType<any>) => T
>ChangeDetectionStrategy : { OnPush: number; Default: number; }
>"aField" : "aField"
>{value: 42} : { value: number; }
>value : number
>42 : 42
/** @type {number} */
ChangeDetectionStrategy["bField"];
>ChangeDetectionStrategy["bField"] : error
>ChangeDetectionStrategy : { OnPush: number; Default: number; }
>"bField" : "bField"