Tipo de fluxo - criando um objeto vazio selado
Os documentos de Flow dizem:When you create an object without any properties, you create an unsealed object type in Flow.
É possível criar um objeto selado sem propriedades?
Meu caso de uso é o seguinte. Eu quero inicializarstate
para um objeto vazio e forneça ao estado o seguinte tipo:
type EmployeesViewState = {|
employeesRequest?: Request<Array<Employee>>,
geosRequest?: Request<Array<Geo>>,
|};
O erro que recebo ao tentar atribuir um objeto vazio é
33: state: EmployeesViewState = {};
^^ object literal. Inexact type is incompatible with exact type
33: state: EmployeesViewState = {};
^^^^^^^^^^^^^^^^^^ exact type: object type
Obviamente, como ainda não tenho os pedidos disponíveis, não posso atribuí-los. Eu também não posso atribuirundefined
ao objeto porque o estado é definido com pipes, ou seja, é um tipo exato.
Eu posso enganar o fluxo dizendoconst a: any = {}; state = a;
mas isso parece realmente hacky. Existem outras maneiras de resolver esse problema?