I have a few object types defined in RigidbodyShape
:
export type RigidbodyShape = { type: 'sphere', radius: number; } |
{ type: 'cube', size: { width: number, height: number, depth: number; }; }
I would like to get the type by passing cube
, sphere
, etc. to the generic found within MyClass
.
export interface RigidbodyOptions {
shape: RigidbodyShape<T>;
}
class MyClass {
constructor() {
public readonly rigidbody: RigidbodyRef<'cube'>
}
}
export class RigidbodyRef<T> {
options!: T;
}
So, how can I set the type of options
to by referencing the type in the object by passing the string?
{ type: 'cube', size: { width: number, height: number, depth: number; }; }