feat(struct): disallow defined fields in extra

This commit is contained in:
Simon Chan 2020-09-26 16:21:31 +08:00
parent ece9acdc80
commit f56b253d7d

View file

@ -288,7 +288,12 @@ export default class Struct<
return this.array(name, Array.SubType.String, options);
};
public extra<TValue extends object>(
public extra<TValue extends Record<
Exclude<
keyof TValue,
Exclude<keyof TValue, keyof TResult>>,
never
>>(
value: TValue & ThisType<WithBackingField<Overwrite<Overwrite<TExtra, TValue>, TResult>>>
): Struct<
TResult,