mirror of
https://github.com/sindresorhus/type-fest.git
synced 2025-12-08 19:25:05 +00:00
31 lines
957 B
TypeScript
31 lines
957 B
TypeScript
import {expectAssignable, expectNotAssignable} from 'tsd';
|
|
import type {Jsonifiable} from '..';
|
|
|
|
expectAssignable<Jsonifiable>(1);
|
|
expectAssignable<Jsonifiable>('');
|
|
expectAssignable<Jsonifiable>(null);
|
|
expectAssignable<Jsonifiable>(new Date());
|
|
expectAssignable<Jsonifiable>({a: new Date()});
|
|
expectAssignable<Jsonifiable>([new Date()]);
|
|
expectAssignable<Jsonifiable>({a: undefined});
|
|
expectAssignable<Jsonifiable>([1, 2, 3] as const);
|
|
expectAssignable<Jsonifiable>({a: new Date()} as const);
|
|
expectAssignable<Jsonifiable>({a: {deeply: {nested: {toJsonObject: new Date()}}}});
|
|
expectAssignable<Jsonifiable>({toJSON: () => new Date()});
|
|
expectAssignable<Jsonifiable>({
|
|
toJSON() {
|
|
return {
|
|
foo: {
|
|
toJSON() {
|
|
return {bar: 'bar'};
|
|
},
|
|
},
|
|
};
|
|
},
|
|
});
|
|
|
|
expectNotAssignable<Jsonifiable>(undefined);
|
|
expectNotAssignable<Jsonifiable>(new Map());
|
|
expectNotAssignable<Jsonifiable>({a: new Map()});
|
|
expectNotAssignable<Jsonifiable>([new Map()]);
|