Отказ от ответственности: я noob машинописи (и систем типов).
У меня есть существующий компонент со следующим интерфейсом:
interface IPropsInjectStoreState<S extends any = any, SS extends any = any> {
store: Store<S>;
on?: (state: S) => SS;
children: (output: SS) => React.ReactElement;
}
Я хочу обернуть его ввспомогательный компонент, который автоматически предоставляет свойство хранилища.
const someStore = new Store<ISomeState>({ foo: 'bar' });
export const InjectSomeStoreState = ({ on, children }) => (
<InjectStoreState store={someStore} on={on}>
{injectedState => children(injectedState)}
</InjectStoreState>
);
Каков наилучший способ предоставления типов для компонента InjectSomeStoreState
, который использует существующий интерфейс IPropsInjectStoreState
?