28 lines
607 B
TypeScript
28 lines
607 B
TypeScript
import { printType, expectAssignable, expectType } from 'tsd';
|
|
|
|
import { Updux, ActionGenerator, action } from '.';
|
|
|
|
const dux = new Updux({});
|
|
expectType<unknown>( dux.initial );
|
|
|
|
|
|
() => {
|
|
|
|
const dux = new Updux<{a: string}>({});
|
|
|
|
expectAssignable<{initial: {a:string}}>(dux);
|
|
}
|
|
|
|
// ActionGenerator
|
|
() => {
|
|
let a = action('a');
|
|
expectAssignable<{type: string}>(a);
|
|
expectAssignable<() => {payload?: unknown}>(a);
|
|
|
|
let b = action('b', (() => ({})) as unknown as (name: string) => { name: string } );
|
|
const c = b("foo");
|
|
expectAssignable<{payload: { name: string } }>(c);
|
|
|
|
|
|
}
|