TLShapePartial
See source codeA partial version of a shape, useful for updates and patches.
This type represents a shape where all properties except id
and type
are optional.
It's commonly used when updating existing shapes or creating shape patches.
type TLShapePartial<T extends TLShape = TLShape> = T extends T
? {
id: TLShapeId
meta?: Partial<T['meta']>
props?: Partial<T['props']>
type: T['type']
} & Partial<Omit<T, 'id' | 'meta' | 'props' | 'type'>>
: never
Example
// Update a shape's position
const shapeUpdate: TLShapePartial = {
id: 'shape:123',
type: 'geo',
x: 100,
y: 200,
}
// Update shape properties
const propsUpdate: TLShapePartial<TLGeoShape> = {
id: 'shape:123',
type: 'geo',
props: {
w: 150,
h: 100,
},
}
Prev
TLShapeIdNext
TLStore