How to get readonly item array from an array constant?
const const basicValueTypes = [{
value: 'number',
label: 'Number'
},{
value: 'boolean',
label: 'Boolean'
}];
type ReadonlyItemArray = ???
type ReadOnlyBasicValueTypes = ReadonlyItemArray<typeof basicValueTyeps>;
/*
↓↓↓↓
ReadOnlyBasicValueTypes = (
{value: 'number', label: 'Number'}
| {value: 'boolean', label: 'Boolean'}
)
*/
Update:
I figure out that I can make every item as const:
const basicValueTypes = [{
value: 'number',
label: 'Number'
} as const,{
value: 'boolean',
label: 'Boolean'
} as const];
type BasicValueTypes = typeof basicValueTypes[number]['value'];
// BasicValueTypes = "number" | "boolean"
But I still want to know is it possible to contrive above ReadonlyItemArray type?