Skip to content

Style and primitive types

Read as Markdown

Styles are local, closed contracts: there is no inheritance or cascade. Author input is specified, then normalized, then resolved against a finite allocation. definePrimitive exposes the extension seam without turning Pibbl into a retained scene graph.

ArcStyle is the stroke-only local style for an open circular sweep: radius, finite radian angles, optional center/direction, paint, and interaction fields.

CircleStyle requires radius and accepts optional cx/cy, local paint, events, focus geometry, and applicable declared-box fields.

ClipStyle supplies a clipping Path2D, fill rule, local composition fields, and applicable filter behavior for Clip.

CursorStyle is the local CSS cursor vocabulary used by primitives and the cursor hook; cursor regions use original logical geometry.

EllipseStyle requires radiusX and radiusY and accepts optional center and finite radian rotation with local paint and interaction fields.

FillStyle is the shared local fill-paint vocabulary.

GStyle is the local transform/composition style for Group.

HorizontalLineStyle is the local stroke and allocation-aware endpoint style for HorizontalLine.

ImgStyle is the local geometry, border, paint, and interaction style for browser-decoded images.

LayerStyle is the local presentation style for persistent offscreen Layer content, including its composition-boundary filter behavior.

LineStyle is the local numeric-coordinate and stroke-interaction style for a polyline Line.

NormalizedStyle is Pibbl’s immutable parsed style stage: shorthands and component defaults are resolved, but no parent-derived geometry is retained.

PaintStyle is the shared local paint vocabulary, including opacity and applicable Canvas painting settings.

PathStyle is the local paint and interaction style for a caller-owned Path2D.

PibblResponsiveStyle<S> is the primitive’s ordinary signal-capable style plus an optional readonly when list. Required base fields stay required. Whole-style signals and signals in base or patch fields are supported; conditions and lists are plain values. Use satisfies PibblResponsiveStyle<FlowStyle> for reusable styles. Unmatched patch signals are not read. No styles cascade or inherit.

The responsive local styles guide explains outer placement versus inner content. Custom primitives must leave when out of their specified, normalized, and resolved styles: Pibbl supplies that field on inputs and removes it before callbacks.

PibblSizeQuery requires at least one inclusive, finite nonnegative bound: minWidth, maxWidth, minHeight, or maxHeight. All bounds must match the available containing size in logical units. A direct Grid item’s rules see the Grid content box; rules inside the placed component see its assigned cell.

PibblStyleRule<S> pairs a query with a partial local style patch. Matching patches apply in list order, with the last assignment winning. Patches cannot contain another when; objects and arrays replace rather than deep-merge.

PixelGridAlignment is "none" | "round" | "ceil" | "floor", the supported numeric alignment modes for path helpers and applicable primitive geometry.

PolygonStyle requires finite numeric coordinate pairs and supports local paint, interaction, and rounded-corner fields; fewer than three points are safe empty geometry.

PrimitiveCapabilities declares the optional normalization, resolution, and pure measurement capabilities of a primitive made with definePrimitive.

PrimitiveInput is the public element input shape for a primitive’s props and local style.

PrimitiveInputOf<T> derives that public input shape from a primitive type.

PrimitiveProgramProps is the props portion of a primitive input after Pibbl’s reserved key and style metadata are separated.

PrimitiveRender is the render callback contract supplied to definePrimitive. It executes in Pibbl’s isolated render traversal, not as a standalone function.

RectStyle is the local signed-box, paint, interaction, and rounded-corner style for Rectangle.

RegularPolygonStyle requires integer sides and exactly one of circumradius, inradius, or side length, with local paint and rounded-corner fields.

ResolvedStyle is Pibbl’s immutable finite style stage for the current containing box and allocation; it is passed to primitive rendering.

RoundedCornerStyle is the shared component corner vocabulary. Per-corner entries fall back through cornerRadii?.[i] ?? cornerRadius ?? 0.

SpecifiedStyle is the immutable author-supplied local style stored on an element before parsing and resolution.

StarStyle requires integer points and ordered nonnegative outer/inner radii, forming one concave alternating outline rather than intersecting triangles.

StrokeStyle is the shared local stroke-paint and interaction-width vocabulary.

StyleResolutionContext gives primitive style resolution its allocation, percentage basis, constraints, component identity, and algorithm context.

SvgPathStyle is the local paint and interaction style for browser-parsed SVG path-data geometry.

SystemStyle is the opt-in base style with optional custom and framework- owned filter. It has no index signature, so component styles remain closed.

TextStyle is the local paint, wrapping, fitting, and measurement style for recursive textual content.

VerticalLineStyle is the local stroke and allocation-aware endpoint style for VerticalLine.

WedgeStyle is the local center-closed circular-sector style. Partial sweeps include radial edges; full turns omit them for a seam-free circular stroke.

Supported geometry and presentation properties for Arc.

interface ArcStyle extends SystemStyle, Omit<PaintStyle, "fill">, CursorStyle, BoxStyle, LayoutItemStyle

Related API: ArcStyle, SystemStyle, PaintStyle, CursorStyle, BoxStyle, LayoutItemStyle.

SystemStyle

PaintStyle

CursorStyle

BoxStyle

LayoutItemStyle

Length

Arc

View source — packages/core/src/lib/components/arc.ts:55

radius
radius: number | `${number}%`

Radius in the coordinate system of this geometry or effect. See Length.

View source — packages/core/src/lib/components/arc.ts:58

startAngle
startAngle: number

Angle at which the arc or slice begins. See ArcStyle.

View source — packages/core/src/lib/components/arc.ts:60

endAngle
endAngle: number

Angle at which the arc or slice ends. See ArcStyle.

View source — packages/core/src/lib/components/arc.ts:62

cx (optional)
cx?: number | `${number}%` | undefined

Horizontal coordinate of the center. See Length.

View source — packages/core/src/lib/components/arc.ts:64

cy (optional)
cy?: number | `${number}%` | undefined

Vertical coordinate of the center. See Length.

View source — packages/core/src/lib/components/arc.ts:66

counterclockwise (optional)
counterclockwise?: boolean | undefined

Whether the arc follows the counterclockwise direction. See ArcStyle.

View source — packages/core/src/lib/components/arc.ts:68

lineInteractionWidth (optional)
lineInteractionWidth?: number | undefined

Width used for line hit testing independently of the visible stroke width. See ArcStyle.

View source — packages/core/src/lib/components/arc.ts:73

left (optional)
left?: number | `${number}%` | undefined

Left edge coordinate or inset. See Length.

View source — packages/core/src/lib/style/positioning.ts:127

top (optional)
top?: number | `${number}%` | undefined

Top edge value or top envelope guide. See Length.

View source — packages/core/src/lib/style/positioning.ts:129

width (optional)
width?: Length | undefined

Related API: Length.

Horizontal extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:81

height (optional)
height?: Length | undefined

Related API: Length.

Vertical extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:83

minWidth (optional)
minWidth?: number | `${number}%` | undefined

Minimum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:85

maxWidth (optional)
maxWidth?: number | `${number}%` | undefined

Maximum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:87

minHeight (optional)
minHeight?: number | `${number}%` | undefined

Minimum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:89

maxHeight (optional)
maxHeight?: number | `${number}%` | undefined

Maximum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:91

padding (optional)
padding?: EdgeValues | undefined

Related API: EdgeValues.

Insets between the border box and content box. See EdgeValues.

View source — packages/core/src/lib/style/types.ts:93

overflow (optional)
overflow?: "clip" | "visible" | undefined

Selects "visible", "clip" for overflow. See BoxStyle.

View source — packages/core/src/lib/style/types.ts:95

alignSelf (optional)
alignSelf?: "auto" | "center" | "end" | "flex-end" | "flex-start" | "start" | "stretch" | undefined

This child’s cross-axis or block-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:121

justifySelf (optional)
justifySelf?: "auto" | "center" | "end" | "start" | "stretch" | undefined

This child’s inline-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:123

flexBasis (optional)
flexBasis?: Length | undefined

Related API: Length.

Initial main-axis size before flex growth or shrinkage. See Length.

View source — packages/core/src/lib/style/types.ts:125

flexGrow (optional)
flexGrow?: number | undefined

Relative share of positive free space assigned to this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:127

flexShrink (optional)
flexShrink?: number | undefined

Relative factor used when reducing main-axis size. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:129

gridColumnStart (optional)
gridColumnStart?: number | undefined

Explicit starting grid column. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:131

gridColumnSpan (optional)
gridColumnSpan?: number | undefined

Number of columns occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:133

gridRowStart (optional)
gridRowStart?: number | undefined

Explicit starting grid row. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:135

gridRowSpan (optional)
gridRowSpan?: number | undefined

Number of rows occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:137

stroke (optional)
stroke?: StrokeStyle | undefined

Related API: StrokeStyle.

Paint used for the outline. See StrokeStyle.

View source — packages/core/src/lib/style/types.ts:195

strokeWidth (optional)
strokeWidth?: number | undefined

Width of the painted outline. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:197

opacity (optional)
opacity?: number | undefined

Related API: opacity.

Opacity of the painted result. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:199

cursor (optional)
cursor?: string | undefined

Cursor shown while this target owns pointer presentation. See CursorStyle.

View source — packages/core/src/lib/style/types.ts:212

transition (optional)
transition?: PibblTransitionBinding | undefined

Related API: PibblTransitionBinding.

Visibility-transition binding applied to this primitive and its captured descendants. See SystemStyle.

View source — packages/core/src/lib/types.ts:69

custom (optional)
custom?: unknown

Application-defined style payload passed through the runtime. See SystemStyle.

View source — packages/core/src/lib/types.ts:71

filter (optional)
filter?: PibblFilter | readonly PibblFilter[] | undefined

Related API: PibblFilter.

Ordered pixel-only filters applied to the receiving primitive and its descendants. See PibblFilter.

View source — packages/core/src/lib/types.ts:76

Supported geometry and presentation properties for Circle.

interface CircleStyle extends SystemStyle, PaintStyle, CursorStyle, BoxStyle, LayoutItemStyle

Related API: CircleStyle, SystemStyle, PaintStyle, CursorStyle, BoxStyle, LayoutItemStyle.

SystemStyle

PaintStyle

CursorStyle

BoxStyle

LayoutItemStyle

Length

Circle

View source — packages/core/src/lib/components/circle.ts:50

radius
radius: number | `${number}%`

Radius in the coordinate system of this geometry or effect. See Length.

View source — packages/core/src/lib/components/circle.ts:53

cx (optional)
cx?: number | `${number}%` | undefined

Horizontal coordinate of the center. See Length.

View source — packages/core/src/lib/components/circle.ts:55

cy (optional)
cy?: number | `${number}%` | undefined

Vertical coordinate of the center. See Length.

View source — packages/core/src/lib/components/circle.ts:57

lineInteractionWidth (optional)
lineInteractionWidth?: number | undefined

Width used for line hit testing independently of the visible stroke width. See CircleStyle.

View source — packages/core/src/lib/components/circle.ts:62

left (optional)
left?: number | `${number}%` | undefined

Left edge coordinate or inset. See Length.

View source — packages/core/src/lib/style/positioning.ts:127

top (optional)
top?: number | `${number}%` | undefined

Top edge value or top envelope guide. See Length.

View source — packages/core/src/lib/style/positioning.ts:129

width (optional)
width?: Length | undefined

Related API: Length.

Horizontal extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:81

height (optional)
height?: Length | undefined

Related API: Length.

Vertical extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:83

minWidth (optional)
minWidth?: number | `${number}%` | undefined

Minimum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:85

maxWidth (optional)
maxWidth?: number | `${number}%` | undefined

Maximum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:87

minHeight (optional)
minHeight?: number | `${number}%` | undefined

Minimum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:89

maxHeight (optional)
maxHeight?: number | `${number}%` | undefined

Maximum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:91

padding (optional)
padding?: EdgeValues | undefined

Related API: EdgeValues.

Insets between the border box and content box. See EdgeValues.

View source — packages/core/src/lib/style/types.ts:93

overflow (optional)
overflow?: "clip" | "visible" | undefined

Selects "visible", "clip" for overflow. See BoxStyle.

View source — packages/core/src/lib/style/types.ts:95

alignSelf (optional)
alignSelf?: "auto" | "center" | "end" | "flex-end" | "flex-start" | "start" | "stretch" | undefined

This child’s cross-axis or block-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:121

justifySelf (optional)
justifySelf?: "auto" | "center" | "end" | "start" | "stretch" | undefined

This child’s inline-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:123

flexBasis (optional)
flexBasis?: Length | undefined

Related API: Length.

Initial main-axis size before flex growth or shrinkage. See Length.

View source — packages/core/src/lib/style/types.ts:125

flexGrow (optional)
flexGrow?: number | undefined

Relative share of positive free space assigned to this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:127

flexShrink (optional)
flexShrink?: number | undefined

Relative factor used when reducing main-axis size. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:129

gridColumnStart (optional)
gridColumnStart?: number | undefined

Explicit starting grid column. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:131

gridColumnSpan (optional)
gridColumnSpan?: number | undefined

Number of columns occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:133

gridRowStart (optional)
gridRowStart?: number | undefined

Explicit starting grid row. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:135

gridRowSpan (optional)
gridRowSpan?: number | undefined

Number of rows occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:137

fill (optional)
fill?: FillStyle | undefined

Related API: FillStyle.

Paint used for the interior. See FillStyle.

View source — packages/core/src/lib/style/types.ts:193

stroke (optional)
stroke?: StrokeStyle | undefined

Related API: StrokeStyle.

Paint used for the outline. See StrokeStyle.

View source — packages/core/src/lib/style/types.ts:195

strokeWidth (optional)
strokeWidth?: number | undefined

Width of the painted outline. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:197

opacity (optional)
opacity?: number | undefined

Related API: opacity.

Opacity of the painted result. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:199

cursor (optional)
cursor?: string | undefined

Cursor shown while this target owns pointer presentation. See CursorStyle.

View source — packages/core/src/lib/style/types.ts:212

transition (optional)
transition?: PibblTransitionBinding | undefined

Related API: PibblTransitionBinding.

Visibility-transition binding applied to this primitive and its captured descendants. See SystemStyle.

View source — packages/core/src/lib/types.ts:69

custom (optional)
custom?: unknown

Application-defined style payload passed through the runtime. See SystemStyle.

View source — packages/core/src/lib/types.ts:71

filter (optional)
filter?: PibblFilter | readonly PibblFilter[] | undefined

Related API: PibblFilter.

Ordered pixel-only filters applied to the receiving primitive and its descendants. See PibblFilter.

View source — packages/core/src/lib/types.ts:76

Supported geometry and presentation properties for Clip.

interface ClipStyle extends SystemStyle, BoxStyle, LayoutItemStyle

Related API: ClipStyle, SystemStyle, BoxStyle, LayoutItemStyle.

SystemStyle

BoxStyle

LayoutItemStyle

PathGeometry

Clip

View source — packages/core/src/lib/components/clip.ts:38

d
d: Path2D | PathGeometry

Related API: PathGeometry.

Geometry to draw or clip, supplied in the declared path representation. See PathGeometry.

View source — packages/core/src/lib/components/clip.ts:43

fillRule (optional)
fillRule?: CanvasFillRule | undefined

Canvas winding rule used to determine the path interior. See ClipStyle.

View source — packages/core/src/lib/components/clip.ts:45

left (optional)
left?: number | `${number}%` | undefined

Left edge coordinate or inset. See Length.

View source — packages/core/src/lib/style/positioning.ts:127

top (optional)
top?: number | `${number}%` | undefined

Top edge value or top envelope guide. See Length.

View source — packages/core/src/lib/style/positioning.ts:129

width (optional)
width?: Length | undefined

Related API: Length.

Horizontal extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:81

height (optional)
height?: Length | undefined

Related API: Length.

Vertical extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:83

minWidth (optional)
minWidth?: number | `${number}%` | undefined

Minimum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:85

maxWidth (optional)
maxWidth?: number | `${number}%` | undefined

Maximum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:87

minHeight (optional)
minHeight?: number | `${number}%` | undefined

Minimum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:89

maxHeight (optional)
maxHeight?: number | `${number}%` | undefined

Maximum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:91

padding (optional)
padding?: EdgeValues | undefined

Related API: EdgeValues.

Insets between the border box and content box. See EdgeValues.

View source — packages/core/src/lib/style/types.ts:93

overflow (optional)
overflow?: "clip" | "visible" | undefined

Selects "visible", "clip" for overflow. See BoxStyle.

View source — packages/core/src/lib/style/types.ts:95

alignSelf (optional)
alignSelf?: "auto" | "center" | "end" | "flex-end" | "flex-start" | "start" | "stretch" | undefined

This child’s cross-axis or block-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:121

justifySelf (optional)
justifySelf?: "auto" | "center" | "end" | "start" | "stretch" | undefined

This child’s inline-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:123

flexBasis (optional)
flexBasis?: Length | undefined

Related API: Length.

Initial main-axis size before flex growth or shrinkage. See Length.

View source — packages/core/src/lib/style/types.ts:125

flexGrow (optional)
flexGrow?: number | undefined

Relative share of positive free space assigned to this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:127

flexShrink (optional)
flexShrink?: number | undefined

Relative factor used when reducing main-axis size. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:129

gridColumnStart (optional)
gridColumnStart?: number | undefined

Explicit starting grid column. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:131

gridColumnSpan (optional)
gridColumnSpan?: number | undefined

Number of columns occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:133

gridRowStart (optional)
gridRowStart?: number | undefined

Explicit starting grid row. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:135

gridRowSpan (optional)
gridRowSpan?: number | undefined

Number of rows occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:137

transition (optional)
transition?: PibblTransitionBinding | undefined

Related API: PibblTransitionBinding.

Visibility-transition binding applied to this primitive and its captured descendants. See SystemStyle.

View source — packages/core/src/lib/types.ts:69

custom (optional)
custom?: unknown

Application-defined style payload passed through the runtime. See SystemStyle.

View source — packages/core/src/lib/types.ts:71

filter (optional)
filter?: PibblFilter | readonly PibblFilter[] | undefined

Related API: PibblFilter.

Ordered pixel-only filters applied to the receiving primitive and its descendants. See PibblFilter.

View source — packages/core/src/lib/types.ts:76

Supported geometry and presentation properties for Ellipse.

interface EllipseStyle extends SystemStyle, PaintStyle, CursorStyle, BoxStyle, LayoutItemStyle

Related API: EllipseStyle, SystemStyle, PaintStyle, CursorStyle, BoxStyle, LayoutItemStyle.

SystemStyle

PaintStyle

CursorStyle

BoxStyle

LayoutItemStyle

Length

Ellipse

View source — packages/core/src/lib/components/ellipse.ts:50

radiusX
radiusX: number | `${number}%`

Horizontal ellipse radius. See Length.

View source — packages/core/src/lib/components/ellipse.ts:53

radiusY
radiusY: number | `${number}%`

Vertical ellipse radius. See Length.

View source — packages/core/src/lib/components/ellipse.ts:55

cx (optional)
cx?: number | `${number}%` | undefined

Horizontal coordinate of the center. See Length.

View source — packages/core/src/lib/components/ellipse.ts:57

cy (optional)
cy?: number | `${number}%` | undefined

Vertical coordinate of the center. See Length.

View source — packages/core/src/lib/components/ellipse.ts:59

rotation (optional)
rotation?: number | undefined

Rotation applied to the containing geometry. See EllipseStyle.

View source — packages/core/src/lib/components/ellipse.ts:61

lineInteractionWidth (optional)
lineInteractionWidth?: number | undefined

Width used for line hit testing independently of the visible stroke width. See EllipseStyle.

View source — packages/core/src/lib/components/ellipse.ts:66

left (optional)
left?: number | `${number}%` | undefined

Left edge coordinate or inset. See Length.

View source — packages/core/src/lib/style/positioning.ts:127

top (optional)
top?: number | `${number}%` | undefined

Top edge value or top envelope guide. See Length.

View source — packages/core/src/lib/style/positioning.ts:129

width (optional)
width?: Length | undefined

Related API: Length.

Horizontal extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:81

height (optional)
height?: Length | undefined

Related API: Length.

Vertical extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:83

minWidth (optional)
minWidth?: number | `${number}%` | undefined

Minimum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:85

maxWidth (optional)
maxWidth?: number | `${number}%` | undefined

Maximum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:87

minHeight (optional)
minHeight?: number | `${number}%` | undefined

Minimum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:89

maxHeight (optional)
maxHeight?: number | `${number}%` | undefined

Maximum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:91

padding (optional)
padding?: EdgeValues | undefined

Related API: EdgeValues.

Insets between the border box and content box. See EdgeValues.

View source — packages/core/src/lib/style/types.ts:93

overflow (optional)
overflow?: "clip" | "visible" | undefined

Selects "visible", "clip" for overflow. See BoxStyle.

View source — packages/core/src/lib/style/types.ts:95

alignSelf (optional)
alignSelf?: "auto" | "center" | "end" | "flex-end" | "flex-start" | "start" | "stretch" | undefined

This child’s cross-axis or block-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:121

justifySelf (optional)
justifySelf?: "auto" | "center" | "end" | "start" | "stretch" | undefined

This child’s inline-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:123

flexBasis (optional)
flexBasis?: Length | undefined

Related API: Length.

Initial main-axis size before flex growth or shrinkage. See Length.

View source — packages/core/src/lib/style/types.ts:125

flexGrow (optional)
flexGrow?: number | undefined

Relative share of positive free space assigned to this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:127

flexShrink (optional)
flexShrink?: number | undefined

Relative factor used when reducing main-axis size. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:129

gridColumnStart (optional)
gridColumnStart?: number | undefined

Explicit starting grid column. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:131

gridColumnSpan (optional)
gridColumnSpan?: number | undefined

Number of columns occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:133

gridRowStart (optional)
gridRowStart?: number | undefined

Explicit starting grid row. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:135

gridRowSpan (optional)
gridRowSpan?: number | undefined

Number of rows occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:137

fill (optional)
fill?: FillStyle | undefined

Related API: FillStyle.

Paint used for the interior. See FillStyle.

View source — packages/core/src/lib/style/types.ts:193

stroke (optional)
stroke?: StrokeStyle | undefined

Related API: StrokeStyle.

Paint used for the outline. See StrokeStyle.

View source — packages/core/src/lib/style/types.ts:195

strokeWidth (optional)
strokeWidth?: number | undefined

Width of the painted outline. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:197

opacity (optional)
opacity?: number | undefined

Related API: opacity.

Opacity of the painted result. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:199

cursor (optional)
cursor?: string | undefined

Cursor shown while this target owns pointer presentation. See CursorStyle.

View source — packages/core/src/lib/style/types.ts:212

transition (optional)
transition?: PibblTransitionBinding | undefined

Related API: PibblTransitionBinding.

Visibility-transition binding applied to this primitive and its captured descendants. See SystemStyle.

View source — packages/core/src/lib/types.ts:69

custom (optional)
custom?: unknown

Application-defined style payload passed through the runtime. See SystemStyle.

View source — packages/core/src/lib/types.ts:71

filter (optional)
filter?: PibblFilter | readonly PibblFilter[] | undefined

Related API: PibblFilter.

Ordered pixel-only filters applied to the receiving primitive and its descendants. See PibblFilter.

View source — packages/core/src/lib/types.ts:76

Transforms, layout participation, and shared style properties for Group.

interface GStyle extends SystemStyle, BoxStyle, LayoutItemStyle

Related API: GStyle, SystemStyle, BoxStyle, LayoutItemStyle.

SystemStyle

BoxStyle

LayoutItemStyle

Group

PibblDragHandleStyle

HtmlBoxStyle

View source — packages/core/src/lib/components/g.ts:43

scaleX (optional)
scaleX?: number | undefined

Horizontal scale factor. See GStyle.

View source — packages/core/src/lib/components/g.ts:45

scaleY (optional)
scaleY?: number | undefined

Vertical scale factor. See GStyle.

View source — packages/core/src/lib/components/g.ts:47

rotationDegrees (optional)
rotationDegrees?: number | undefined

Clockwise rotation in degrees.

View source — packages/core/src/lib/components/g.ts:49

rotationOrigin (optional)
rotationOrigin?: [number, number] | undefined

Point around which the rotation is applied. See GStyle.

View source — packages/core/src/lib/components/g.ts:51

translateX (optional)
translateX?: number | undefined

Horizontal translation in the current logical coordinate system. See GStyle.

View source — packages/core/src/lib/components/g.ts:53

translateY (optional)
translateY?: number | undefined

Vertical translation in the current logical coordinate system. See GStyle.

View source — packages/core/src/lib/components/g.ts:55

skewX (optional)
skewX?: number | undefined

Horizontal skew angle in degrees.

View source — packages/core/src/lib/components/g.ts:57

skewY (optional)
skewY?: number | undefined

Vertical skew angle in degrees.

View source — packages/core/src/lib/components/g.ts:59

left (optional)
left?: number | `${number}%` | undefined

Left edge coordinate or inset. See Length.

View source — packages/core/src/lib/style/positioning.ts:127

top (optional)
top?: number | `${number}%` | undefined

Top edge value or top envelope guide. See Length.

View source — packages/core/src/lib/style/positioning.ts:129

width (optional)
width?: Length | undefined

Related API: Length.

Horizontal extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:81

height (optional)
height?: Length | undefined

Related API: Length.

Vertical extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:83

minWidth (optional)
minWidth?: number | `${number}%` | undefined

Minimum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:85

maxWidth (optional)
maxWidth?: number | `${number}%` | undefined

Maximum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:87

minHeight (optional)
minHeight?: number | `${number}%` | undefined

Minimum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:89

maxHeight (optional)
maxHeight?: number | `${number}%` | undefined

Maximum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:91

padding (optional)
padding?: EdgeValues | undefined

Related API: EdgeValues.

Insets between the border box and content box. See EdgeValues.

View source — packages/core/src/lib/style/types.ts:93

overflow (optional)
overflow?: "clip" | "visible" | undefined

Selects "visible", "clip" for overflow. See BoxStyle.

View source — packages/core/src/lib/style/types.ts:95

alignSelf (optional)
alignSelf?: "auto" | "center" | "end" | "flex-end" | "flex-start" | "start" | "stretch" | undefined

This child’s cross-axis or block-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:121

justifySelf (optional)
justifySelf?: "auto" | "center" | "end" | "start" | "stretch" | undefined

This child’s inline-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:123

flexBasis (optional)
flexBasis?: Length | undefined

Related API: Length.

Initial main-axis size before flex growth or shrinkage. See Length.

View source — packages/core/src/lib/style/types.ts:125

flexGrow (optional)
flexGrow?: number | undefined

Relative share of positive free space assigned to this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:127

flexShrink (optional)
flexShrink?: number | undefined

Relative factor used when reducing main-axis size. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:129

gridColumnStart (optional)
gridColumnStart?: number | undefined

Explicit starting grid column. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:131

gridColumnSpan (optional)
gridColumnSpan?: number | undefined

Number of columns occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:133

gridRowStart (optional)
gridRowStart?: number | undefined

Explicit starting grid row. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:135

gridRowSpan (optional)
gridRowSpan?: number | undefined

Number of rows occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:137

transition (optional)
transition?: PibblTransitionBinding | undefined

Related API: PibblTransitionBinding.

Visibility-transition binding applied to this primitive and its captured descendants. See SystemStyle.

View source — packages/core/src/lib/types.ts:69

custom (optional)
custom?: unknown

Application-defined style payload passed through the runtime. See SystemStyle.

View source — packages/core/src/lib/types.ts:71

filter (optional)
filter?: PibblFilter | readonly PibblFilter[] | undefined

Related API: PibblFilter.

Ordered pixel-only filters applied to the receiving primitive and its descendants. See PibblFilter.

View source — packages/core/src/lib/types.ts:76

Supported geometry and presentation properties for HorizontalLine.

interface HorizontalLineStyle extends SystemStyle, BoxStyle, LayoutItemStyle, Omit<LineStyle, 'coords'>

Related API: HorizontalLineStyle, SystemStyle, BoxStyle, LayoutItemStyle, LineStyle.

SystemStyle

BoxStyle

LayoutItemStyle

LineStyle

Length

PixelGridAlignment

HorizontalLine

View source — packages/core/src/lib/components/horizontal-line.ts:50

y
y: number | `${number}%`

Vertical coordinate or displacement in the containing coordinate system. See Length.

View source — packages/core/src/lib/components/horizontal-line.ts:55

x1 (optional)
x1?: number | `${number}%` | undefined

Horizontal coordinate of the first endpoint. See Length.

View source — packages/core/src/lib/components/horizontal-line.ts:57

x2 (optional)
x2?: number | `${number}%` | undefined

Horizontal coordinate of the second endpoint. See Length.

View source — packages/core/src/lib/components/horizontal-line.ts:59

alignToPixelGrid (optional)
alignToPixelGrid?: PixelGridAlignment | undefined

Related API: PixelGridAlignment.

Pixel-grid alignment policy applied to the resolved geometry. See PixelGridAlignment.

View source — packages/core/src/lib/components/horizontal-line.ts:63

lineInteractionWidth (optional)
lineInteractionWidth?: number | undefined

Width used for line hit testing independently of the visible stroke width. See HorizontalLineStyle.

View source — packages/core/src/lib/components/horizontal-line.ts:68

left (optional)
left?: number | `${number}%` | undefined

Left edge coordinate or inset. See Length.

View source — packages/core/src/lib/style/positioning.ts:127

top (optional)
top?: number | `${number}%` | undefined

Top edge value or top envelope guide. See Length.

View source — packages/core/src/lib/style/positioning.ts:129

width (optional)
width?: Length | undefined

Related API: Length.

Horizontal extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:81

height (optional)
height?: Length | undefined

Related API: Length.

Vertical extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:83

minWidth (optional)
minWidth?: number | `${number}%` | undefined

Minimum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:85

maxWidth (optional)
maxWidth?: number | `${number}%` | undefined

Maximum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:87

minHeight (optional)
minHeight?: number | `${number}%` | undefined

Minimum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:89

maxHeight (optional)
maxHeight?: number | `${number}%` | undefined

Maximum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:91

padding (optional)
padding?: EdgeValues | undefined

Related API: EdgeValues.

Insets between the border box and content box. See EdgeValues.

View source — packages/core/src/lib/style/types.ts:93

overflow (optional)
overflow?: "clip" | "visible" | undefined

Selects "visible", "clip" for overflow. See BoxStyle.

View source — packages/core/src/lib/style/types.ts:95

alignSelf (optional)
alignSelf?: "auto" | "center" | "end" | "flex-end" | "flex-start" | "start" | "stretch" | undefined

This child’s cross-axis or block-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:121

justifySelf (optional)
justifySelf?: "auto" | "center" | "end" | "start" | "stretch" | undefined

This child’s inline-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:123

flexBasis (optional)
flexBasis?: Length | undefined

Related API: Length.

Initial main-axis size before flex growth or shrinkage. See Length.

View source — packages/core/src/lib/style/types.ts:125

flexGrow (optional)
flexGrow?: number | undefined

Relative share of positive free space assigned to this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:127

flexShrink (optional)
flexShrink?: number | undefined

Relative factor used when reducing main-axis size. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:129

gridColumnStart (optional)
gridColumnStart?: number | undefined

Explicit starting grid column. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:131

gridColumnSpan (optional)
gridColumnSpan?: number | undefined

Number of columns occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:133

gridRowStart (optional)
gridRowStart?: number | undefined

Explicit starting grid row. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:135

gridRowSpan (optional)
gridRowSpan?: number | undefined

Number of rows occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:137

stroke (optional)
stroke?: StrokeStyle | undefined

Related API: StrokeStyle.

Paint used for the outline. See StrokeStyle.

View source — packages/core/src/lib/style/types.ts:195

strokeWidth (optional)
strokeWidth?: number | undefined

Width of the painted outline. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:197

opacity (optional)
opacity?: number | undefined

Related API: opacity.

Opacity of the painted result. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:199

cursor (optional)
cursor?: string | undefined

Cursor shown while this target owns pointer presentation. See CursorStyle.

View source — packages/core/src/lib/style/types.ts:212

transition (optional)
transition?: PibblTransitionBinding | undefined

Related API: PibblTransitionBinding.

Visibility-transition binding applied to this primitive and its captured descendants. See SystemStyle.

View source — packages/core/src/lib/types.ts:69

custom (optional)
custom?: unknown

Application-defined style payload passed through the runtime. See SystemStyle.

View source — packages/core/src/lib/types.ts:71

filter (optional)
filter?: PibblFilter | readonly PibblFilter[] | undefined

Related API: PibblFilter.

Ordered pixel-only filters applied to the receiving primitive and its descendants. See PibblFilter.

View source — packages/core/src/lib/types.ts:76

Supported geometry and presentation properties for Layer.

interface LayerStyle extends SystemStyle, BoxStyle, LayoutItemStyle

Related API: LayerStyle, SystemStyle, BoxStyle, LayoutItemStyle.

SystemStyle

BoxStyle

LayoutItemStyle

Layer

View source — packages/core/src/lib/components/layer.ts:67

left (optional)
left?: number | `${number}%` | undefined

Left edge coordinate or inset. See Length.

View source — packages/core/src/lib/style/positioning.ts:127

top (optional)
top?: number | `${number}%` | undefined

Top edge value or top envelope guide. See Length.

View source — packages/core/src/lib/style/positioning.ts:129

width (optional)
width?: Length | undefined

Related API: Length.

Horizontal extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:81

height (optional)
height?: Length | undefined

Related API: Length.

Vertical extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:83

minWidth (optional)
minWidth?: number | `${number}%` | undefined

Minimum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:85

maxWidth (optional)
maxWidth?: number | `${number}%` | undefined

Maximum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:87

minHeight (optional)
minHeight?: number | `${number}%` | undefined

Minimum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:89

maxHeight (optional)
maxHeight?: number | `${number}%` | undefined

Maximum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:91

padding (optional)
padding?: EdgeValues | undefined

Related API: EdgeValues.

Insets between the border box and content box. See EdgeValues.

View source — packages/core/src/lib/style/types.ts:93

overflow (optional)
overflow?: "clip" | "visible" | undefined

Selects "visible", "clip" for overflow. See BoxStyle.

View source — packages/core/src/lib/style/types.ts:95

alignSelf (optional)
alignSelf?: "auto" | "center" | "end" | "flex-end" | "flex-start" | "start" | "stretch" | undefined

This child’s cross-axis or block-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:121

justifySelf (optional)
justifySelf?: "auto" | "center" | "end" | "start" | "stretch" | undefined

This child’s inline-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:123

flexBasis (optional)
flexBasis?: Length | undefined

Related API: Length.

Initial main-axis size before flex growth or shrinkage. See Length.

View source — packages/core/src/lib/style/types.ts:125

flexGrow (optional)
flexGrow?: number | undefined

Relative share of positive free space assigned to this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:127

flexShrink (optional)
flexShrink?: number | undefined

Relative factor used when reducing main-axis size. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:129

gridColumnStart (optional)
gridColumnStart?: number | undefined

Explicit starting grid column. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:131

gridColumnSpan (optional)
gridColumnSpan?: number | undefined

Number of columns occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:133

gridRowStart (optional)
gridRowStart?: number | undefined

Explicit starting grid row. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:135

gridRowSpan (optional)
gridRowSpan?: number | undefined

Number of rows occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:137

transition (optional)
transition?: PibblTransitionBinding | undefined

Related API: PibblTransitionBinding.

Visibility-transition binding applied to this primitive and its captured descendants. See SystemStyle.

View source — packages/core/src/lib/types.ts:69

custom (optional)
custom?: unknown

Application-defined style payload passed through the runtime. See SystemStyle.

View source — packages/core/src/lib/types.ts:71

filter (optional)
filter?: PibblFilter | readonly PibblFilter[] | undefined

Related API: PibblFilter.

Ordered pixel-only filters applied to the receiving primitive and its descendants. See PibblFilter.

View source — packages/core/src/lib/types.ts:76

Supported geometry and presentation properties for Line.

interface LineStyle extends SystemStyle, BoxStyle, LayoutItemStyle, Omit<PaintStyle, 'fill'>, CursorStyle

Related API: LineStyle, SystemStyle, BoxStyle, LayoutItemStyle, PaintStyle, CursorStyle.

SystemStyle

BoxStyle

LayoutItemStyle

PaintStyle

CursorStyle

Line

HorizontalLineStyle

VerticalLineStyle

View source — packages/core/src/lib/components/line.ts:51

coords
coords: [number, number][]

Ordered coordinate pairs describing the path vertices. See LineStyle.

View source — packages/core/src/lib/components/line.ts:54

lineInteractionWidth (optional)
lineInteractionWidth?: number | undefined

Width used for line hit testing independently of the visible stroke width. See LineStyle.

View source — packages/core/src/lib/components/line.ts:59

left (optional)
left?: number | `${number}%` | undefined

Left edge coordinate or inset. See Length.

View source — packages/core/src/lib/style/positioning.ts:127

top (optional)
top?: number | `${number}%` | undefined

Top edge value or top envelope guide. See Length.

View source — packages/core/src/lib/style/positioning.ts:129

width (optional)
width?: Length | undefined

Related API: Length.

Horizontal extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:81

height (optional)
height?: Length | undefined

Related API: Length.

Vertical extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:83

minWidth (optional)
minWidth?: number | `${number}%` | undefined

Minimum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:85

maxWidth (optional)
maxWidth?: number | `${number}%` | undefined

Maximum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:87

minHeight (optional)
minHeight?: number | `${number}%` | undefined

Minimum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:89

maxHeight (optional)
maxHeight?: number | `${number}%` | undefined

Maximum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:91

padding (optional)
padding?: EdgeValues | undefined

Related API: EdgeValues.

Insets between the border box and content box. See EdgeValues.

View source — packages/core/src/lib/style/types.ts:93

overflow (optional)
overflow?: "clip" | "visible" | undefined

Selects "visible", "clip" for overflow. See BoxStyle.

View source — packages/core/src/lib/style/types.ts:95

alignSelf (optional)
alignSelf?: "auto" | "center" | "end" | "flex-end" | "flex-start" | "start" | "stretch" | undefined

This child’s cross-axis or block-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:121

justifySelf (optional)
justifySelf?: "auto" | "center" | "end" | "start" | "stretch" | undefined

This child’s inline-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:123

flexBasis (optional)
flexBasis?: Length | undefined

Related API: Length.

Initial main-axis size before flex growth or shrinkage. See Length.

View source — packages/core/src/lib/style/types.ts:125

flexGrow (optional)
flexGrow?: number | undefined

Relative share of positive free space assigned to this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:127

flexShrink (optional)
flexShrink?: number | undefined

Relative factor used when reducing main-axis size. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:129

gridColumnStart (optional)
gridColumnStart?: number | undefined

Explicit starting grid column. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:131

gridColumnSpan (optional)
gridColumnSpan?: number | undefined

Number of columns occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:133

gridRowStart (optional)
gridRowStart?: number | undefined

Explicit starting grid row. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:135

gridRowSpan (optional)
gridRowSpan?: number | undefined

Number of rows occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:137

stroke (optional)
stroke?: StrokeStyle | undefined

Related API: StrokeStyle.

Paint used for the outline. See StrokeStyle.

View source — packages/core/src/lib/style/types.ts:195

strokeWidth (optional)
strokeWidth?: number | undefined

Width of the painted outline. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:197

opacity (optional)
opacity?: number | undefined

Related API: opacity.

Opacity of the painted result. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:199

cursor (optional)
cursor?: string | undefined

Cursor shown while this target owns pointer presentation. See CursorStyle.

View source — packages/core/src/lib/style/types.ts:212

transition (optional)
transition?: PibblTransitionBinding | undefined

Related API: PibblTransitionBinding.

Visibility-transition binding applied to this primitive and its captured descendants. See SystemStyle.

View source — packages/core/src/lib/types.ts:69

custom (optional)
custom?: unknown

Application-defined style payload passed through the runtime. See SystemStyle.

View source — packages/core/src/lib/types.ts:71

filter (optional)
filter?: PibblFilter | readonly PibblFilter[] | undefined

Related API: PibblFilter.

Ordered pixel-only filters applied to the receiving primitive and its descendants. See PibblFilter.

View source — packages/core/src/lib/types.ts:76

Supported geometry and presentation properties for Polygon.

interface PolygonStyle extends
RoundedCornerStyle,
SystemStyle,
PaintStyle,
CursorStyle,
BoxStyle,
LayoutItemStyle

Related API: PolygonStyle, RoundedCornerStyle, SystemStyle, PaintStyle, CursorStyle, BoxStyle, LayoutItemStyle.

RoundedCornerStyle

SystemStyle

PaintStyle

CursorStyle

BoxStyle

LayoutItemStyle

Polygon

View source — packages/core/src/lib/components/polygon.ts:49

coords
coords: [number, number][]

Ordered coordinate pairs describing the path vertices. See PolygonStyle.

View source — packages/core/src/lib/components/polygon.ts:58

lineInteractionWidth (optional)
lineInteractionWidth?: number | undefined

Width used for line hit testing independently of the visible stroke width. See PolygonStyle.

View source — packages/core/src/lib/components/polygon.ts:63

cornerRadius (optional)
cornerRadius?: number | `${number}%` | undefined

Uniform corner radius used where no per-corner override is supplied. See Length.

View source — packages/core/src/lib/style/types.ts:45

cornerRadii (optional)
cornerRadii?: readonly (number | `${number}%` | null | undefined)[] | undefined

Per-corner radii; nullish entries use the uniform corner radius. See Length.

View source — packages/core/src/lib/style/types.ts:47

left (optional)
left?: number | `${number}%` | undefined

Left edge coordinate or inset. See Length.

View source — packages/core/src/lib/style/positioning.ts:127

top (optional)
top?: number | `${number}%` | undefined

Top edge value or top envelope guide. See Length.

View source — packages/core/src/lib/style/positioning.ts:129

width (optional)
width?: Length | undefined

Related API: Length.

Horizontal extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:81

height (optional)
height?: Length | undefined

Related API: Length.

Vertical extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:83

minWidth (optional)
minWidth?: number | `${number}%` | undefined

Minimum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:85

maxWidth (optional)
maxWidth?: number | `${number}%` | undefined

Maximum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:87

minHeight (optional)
minHeight?: number | `${number}%` | undefined

Minimum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:89

maxHeight (optional)
maxHeight?: number | `${number}%` | undefined

Maximum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:91

padding (optional)
padding?: EdgeValues | undefined

Related API: EdgeValues.

Insets between the border box and content box. See EdgeValues.

View source — packages/core/src/lib/style/types.ts:93

overflow (optional)
overflow?: "clip" | "visible" | undefined

Selects "visible", "clip" for overflow. See BoxStyle.

View source — packages/core/src/lib/style/types.ts:95

alignSelf (optional)
alignSelf?: "auto" | "center" | "end" | "flex-end" | "flex-start" | "start" | "stretch" | undefined

This child’s cross-axis or block-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:121

justifySelf (optional)
justifySelf?: "auto" | "center" | "end" | "start" | "stretch" | undefined

This child’s inline-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:123

flexBasis (optional)
flexBasis?: Length | undefined

Related API: Length.

Initial main-axis size before flex growth or shrinkage. See Length.

View source — packages/core/src/lib/style/types.ts:125

flexGrow (optional)
flexGrow?: number | undefined

Relative share of positive free space assigned to this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:127

flexShrink (optional)
flexShrink?: number | undefined

Relative factor used when reducing main-axis size. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:129

gridColumnStart (optional)
gridColumnStart?: number | undefined

Explicit starting grid column. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:131

gridColumnSpan (optional)
gridColumnSpan?: number | undefined

Number of columns occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:133

gridRowStart (optional)
gridRowStart?: number | undefined

Explicit starting grid row. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:135

gridRowSpan (optional)
gridRowSpan?: number | undefined

Number of rows occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:137

fill (optional)
fill?: FillStyle | undefined

Related API: FillStyle.

Paint used for the interior. See FillStyle.

View source — packages/core/src/lib/style/types.ts:193

stroke (optional)
stroke?: StrokeStyle | undefined

Related API: StrokeStyle.

Paint used for the outline. See StrokeStyle.

View source — packages/core/src/lib/style/types.ts:195

strokeWidth (optional)
strokeWidth?: number | undefined

Width of the painted outline. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:197

opacity (optional)
opacity?: number | undefined

Related API: opacity.

Opacity of the painted result. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:199

cursor (optional)
cursor?: string | undefined

Cursor shown while this target owns pointer presentation. See CursorStyle.

View source — packages/core/src/lib/style/types.ts:212

transition (optional)
transition?: PibblTransitionBinding | undefined

Related API: PibblTransitionBinding.

Visibility-transition binding applied to this primitive and its captured descendants. See SystemStyle.

View source — packages/core/src/lib/types.ts:69

custom (optional)
custom?: unknown

Application-defined style payload passed through the runtime. See SystemStyle.

View source — packages/core/src/lib/types.ts:71

filter (optional)
filter?: PibblFilter | readonly PibblFilter[] | undefined

Related API: PibblFilter.

Ordered pixel-only filters applied to the receiving primitive and its descendants. See PibblFilter.

View source — packages/core/src/lib/types.ts:76

Supported geometry and presentation properties for RegularPolygon.

type RegularPolygonStyle = RegularPolygonCommonStyle &
RegularPolygonSizeStyle &
SystemStyle &
PaintStyle &
CursorStyle &
BoxStyle &
LayoutItemStyle

Related API: RegularPolygonStyle, SystemStyle, PaintStyle, CursorStyle, BoxStyle, LayoutItemStyle.

SystemStyle

PaintStyle

CursorStyle

BoxStyle

LayoutItemStyle

RegularPolygon

View source — packages/core/src/lib/components/regular-polygon.ts:130

sides
sides: number

Number of sides of the regular polygon. See RegularPolygonCommonStyle.

View source — packages/core/src/lib/components/regular-polygon.ts:57

cx (optional)
cx?: number | `${number}%` | undefined

Horizontal coordinate of the center. See Length.

View source — packages/core/src/lib/components/regular-polygon.ts:59

cy (optional)
cy?: number | `${number}%` | undefined

Vertical coordinate of the center. See Length.

View source — packages/core/src/lib/components/regular-polygon.ts:61

rotation (optional)
rotation?: number | undefined

Rotation applied to the containing geometry. See RegularPolygonCommonStyle.

View source — packages/core/src/lib/components/regular-polygon.ts:63

lineInteractionWidth (optional)
lineInteractionWidth?: number | undefined

Width used for line hit testing independently of the visible stroke width. See RegularPolygonCommonStyle.

View source — packages/core/src/lib/components/regular-polygon.ts:68

cornerRadius (optional)
cornerRadius?: number | `${number}%` | undefined

Uniform corner radius used where no per-corner override is supplied. See Length.

View source — packages/core/src/lib/style/types.ts:45

cornerRadii (optional)
cornerRadii?: readonly (number | `${number}%` | null | undefined)[] | undefined

Per-corner radii; nullish entries use the uniform corner radius. See Length.

View source — packages/core/src/lib/style/types.ts:47

circumradius (optional)
circumradius?: number | `${number}%` | undefined

Distance from the polygon center to a vertex. See Length. Not accepted in this variant; use the alternative fields instead. See RegularPolygonSizeStyle.

View source — packages/core/src/lib/components/regular-polygon.ts:79

inradius (optional)
inradius?: number | `${number}%` | undefined

Not accepted in this variant; use the alternative fields instead. See RegularPolygonSizeStyle. Distance from the polygon center to an edge. See Length.

View source — packages/core/src/lib/components/regular-polygon.ts:84

sideLength (optional)
sideLength?: number | `${number}%` | undefined

Not accepted in this variant; use the alternative fields instead. See RegularPolygonSizeStyle. Length of one polygon edge. See Length.

View source — packages/core/src/lib/components/regular-polygon.ts:89

transition (optional)
transition?: PibblTransitionBinding | undefined

Related API: PibblTransitionBinding.

Visibility-transition binding applied to this primitive and its captured descendants. See SystemStyle.

View source — packages/core/src/lib/types.ts:69

custom (optional)
custom?: unknown

Application-defined style payload passed through the runtime. See SystemStyle.

View source — packages/core/src/lib/types.ts:71

filter (optional)
filter?: PibblFilter | readonly PibblFilter[] | undefined

Related API: PibblFilter.

Ordered pixel-only filters applied to the receiving primitive and its descendants. See PibblFilter.

View source — packages/core/src/lib/types.ts:76

fill (optional)
fill?: FillStyle | undefined

Related API: FillStyle.

Paint used for the interior. See FillStyle.

View source — packages/core/src/lib/style/types.ts:193

stroke (optional)
stroke?: StrokeStyle | undefined

Related API: StrokeStyle.

Paint used for the outline. See StrokeStyle.

View source — packages/core/src/lib/style/types.ts:195

strokeWidth (optional)
strokeWidth?: number | undefined

Width of the painted outline. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:197

opacity (optional)
opacity?: number | undefined

Related API: opacity.

Opacity of the painted result. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:199

cursor (optional)
cursor?: string | undefined

Cursor shown while this target owns pointer presentation. See CursorStyle.

View source — packages/core/src/lib/style/types.ts:212

width (optional)
width?: Length | undefined

Related API: Length.

Horizontal extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:81

height (optional)
height?: Length | undefined

Related API: Length.

Vertical extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:83

minWidth (optional)
minWidth?: number | `${number}%` | undefined

Minimum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:85

maxWidth (optional)
maxWidth?: number | `${number}%` | undefined

Maximum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:87

minHeight (optional)
minHeight?: number | `${number}%` | undefined

Minimum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:89

maxHeight (optional)
maxHeight?: number | `${number}%` | undefined

Maximum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:91

padding (optional)
padding?: EdgeValues | undefined

Related API: EdgeValues.

Insets between the border box and content box. See EdgeValues.

View source — packages/core/src/lib/style/types.ts:93

overflow (optional)
overflow?: "clip" | "visible" | undefined

Selects "visible", "clip" for overflow. See BoxStyle.

View source — packages/core/src/lib/style/types.ts:95

left (optional)
left?: number | `${number}%` | undefined

Left edge coordinate or inset. See Length.

View source — packages/core/src/lib/style/positioning.ts:127

top (optional)
top?: number | `${number}%` | undefined

Top edge value or top envelope guide. See Length.

View source — packages/core/src/lib/style/positioning.ts:129

alignSelf (optional)
alignSelf?: "auto" | "center" | "end" | "flex-end" | "flex-start" | "start" | "stretch" | undefined

This child’s cross-axis or block-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:121

justifySelf (optional)
justifySelf?: "auto" | "center" | "end" | "start" | "stretch" | undefined

This child’s inline-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:123

flexBasis (optional)
flexBasis?: Length | undefined

Related API: Length.

Initial main-axis size before flex growth or shrinkage. See Length.

View source — packages/core/src/lib/style/types.ts:125

flexGrow (optional)
flexGrow?: number | undefined

Relative share of positive free space assigned to this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:127

flexShrink (optional)
flexShrink?: number | undefined

Relative factor used when reducing main-axis size. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:129

gridColumnStart (optional)
gridColumnStart?: number | undefined

Explicit starting grid column. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:131

gridColumnSpan (optional)
gridColumnSpan?: number | undefined

Number of columns occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:133

gridRowStart (optional)
gridRowStart?: number | undefined

Explicit starting grid row. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:135

gridRowSpan (optional)
gridRowSpan?: number | undefined

Number of rows occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:137

Supported geometry and presentation properties for Star.

interface StarStyle extends
RoundedCornerStyle,
SystemStyle,
PaintStyle,
CursorStyle,
BoxStyle,
LayoutItemStyle

Related API: StarStyle, RoundedCornerStyle, SystemStyle, PaintStyle, CursorStyle, BoxStyle, LayoutItemStyle.

RoundedCornerStyle

SystemStyle

PaintStyle

CursorStyle

BoxStyle

LayoutItemStyle

Length

Star

View source — packages/core/src/lib/components/star.ts:61

points
points: number

Points defining the geometry or reported by the contact query. See StarStyle.

View source — packages/core/src/lib/components/star.ts:70

cx (optional)
cx?: number | `${number}%` | undefined

Horizontal coordinate of the center. See Length.

View source — packages/core/src/lib/components/star.ts:72

cy (optional)
cy?: number | `${number}%` | undefined

Vertical coordinate of the center. See Length.

View source — packages/core/src/lib/components/star.ts:74

outerRadius
outerRadius: number | `${number}%`

Radius of the outer boundary. See Length.

View source — packages/core/src/lib/components/star.ts:76

innerRadius
innerRadius: number | `${number}%`

Radius of the inner boundary. See Length.

View source — packages/core/src/lib/components/star.ts:78

rotation (optional)
rotation?: number | undefined

Rotation applied to the containing geometry. See StarStyle.

View source — packages/core/src/lib/components/star.ts:80

lineInteractionWidth (optional)
lineInteractionWidth?: number | undefined

Width used for line hit testing independently of the visible stroke width. See StarStyle.

View source — packages/core/src/lib/components/star.ts:85

cornerRadii (optional)
cornerRadii?: readonly (number | `${number}%` | null | undefined)[] | undefined

Per-corner radii; nullish entries use the uniform corner radius. See Length.

View source — packages/core/src/lib/style/types.ts:47

left (optional)
left?: number | `${number}%` | undefined

Left edge coordinate or inset. See Length.

View source — packages/core/src/lib/style/positioning.ts:127

top (optional)
top?: number | `${number}%` | undefined

Top edge value or top envelope guide. See Length.

View source — packages/core/src/lib/style/positioning.ts:129

cornerRadius (optional)
cornerRadius?: number | `${number}%` | undefined

Uniform corner radius used where no per-corner override is supplied. See Length.

View source — packages/core/src/lib/style/types.ts:45

width (optional)
width?: Length | undefined

Related API: Length.

Horizontal extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:81

height (optional)
height?: Length | undefined

Related API: Length.

Vertical extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:83

minWidth (optional)
minWidth?: number | `${number}%` | undefined

Minimum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:85

maxWidth (optional)
maxWidth?: number | `${number}%` | undefined

Maximum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:87

minHeight (optional)
minHeight?: number | `${number}%` | undefined

Minimum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:89

maxHeight (optional)
maxHeight?: number | `${number}%` | undefined

Maximum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:91

padding (optional)
padding?: EdgeValues | undefined

Related API: EdgeValues.

Insets between the border box and content box. See EdgeValues.

View source — packages/core/src/lib/style/types.ts:93

overflow (optional)
overflow?: "clip" | "visible" | undefined

Selects "visible", "clip" for overflow. See BoxStyle.

View source — packages/core/src/lib/style/types.ts:95

alignSelf (optional)
alignSelf?: "auto" | "center" | "end" | "flex-end" | "flex-start" | "start" | "stretch" | undefined

This child’s cross-axis or block-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:121

justifySelf (optional)
justifySelf?: "auto" | "center" | "end" | "start" | "stretch" | undefined

This child’s inline-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:123

flexBasis (optional)
flexBasis?: Length | undefined

Related API: Length.

Initial main-axis size before flex growth or shrinkage. See Length.

View source — packages/core/src/lib/style/types.ts:125

flexGrow (optional)
flexGrow?: number | undefined

Relative share of positive free space assigned to this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:127

flexShrink (optional)
flexShrink?: number | undefined

Relative factor used when reducing main-axis size. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:129

gridColumnStart (optional)
gridColumnStart?: number | undefined

Explicit starting grid column. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:131

gridColumnSpan (optional)
gridColumnSpan?: number | undefined

Number of columns occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:133

gridRowStart (optional)
gridRowStart?: number | undefined

Explicit starting grid row. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:135

gridRowSpan (optional)
gridRowSpan?: number | undefined

Number of rows occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:137

fill (optional)
fill?: FillStyle | undefined

Related API: FillStyle.

Paint used for the interior. See FillStyle.

View source — packages/core/src/lib/style/types.ts:193

stroke (optional)
stroke?: StrokeStyle | undefined

Related API: StrokeStyle.

Paint used for the outline. See StrokeStyle.

View source — packages/core/src/lib/style/types.ts:195

strokeWidth (optional)
strokeWidth?: number | undefined

Width of the painted outline. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:197

opacity (optional)
opacity?: number | undefined

Related API: opacity.

Opacity of the painted result. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:199

cursor (optional)
cursor?: string | undefined

Cursor shown while this target owns pointer presentation. See CursorStyle.

View source — packages/core/src/lib/style/types.ts:212

transition (optional)
transition?: PibblTransitionBinding | undefined

Related API: PibblTransitionBinding.

Visibility-transition binding applied to this primitive and its captured descendants. See SystemStyle.

View source — packages/core/src/lib/types.ts:69

custom (optional)
custom?: unknown

Application-defined style payload passed through the runtime. See SystemStyle.

View source — packages/core/src/lib/types.ts:71

filter (optional)
filter?: PibblFilter | readonly PibblFilter[] | undefined

Related API: PibblFilter.

Ordered pixel-only filters applied to the receiving primitive and its descendants. See PibblFilter.

View source — packages/core/src/lib/types.ts:76

Supported geometry and presentation properties for VerticalLine.

interface VerticalLineStyle extends SystemStyle, BoxStyle, LayoutItemStyle, Omit<LineStyle, 'coords'>

Related API: VerticalLineStyle, SystemStyle, BoxStyle, LayoutItemStyle, LineStyle.

SystemStyle

BoxStyle

LayoutItemStyle

LineStyle

Length

PixelGridAlignment

VerticalLine

View source — packages/core/src/lib/components/vertical-line.ts:50

x
x: number | `${number}%`

Horizontal coordinate or displacement in the containing coordinate system. See Length .

View source — packages/core/src/lib/components/vertical-line.ts:56

y1 (optional)
y1?: number | `${number}%` | undefined

Vertical coordinate of the first endpoint. See Length.

View source — packages/core/src/lib/components/vertical-line.ts:58

y2 (optional)
y2?: number | `${number}%` | undefined

Vertical coordinate of the second endpoint. See Length.

View source — packages/core/src/lib/components/vertical-line.ts:60

alignToPixelGrid (optional)
alignToPixelGrid?: PixelGridAlignment | undefined

Related API: PixelGridAlignment.

Pixel-grid alignment policy applied to the resolved geometry. See PixelGridAlignment.

View source — packages/core/src/lib/components/vertical-line.ts:64

lineInteractionWidth (optional)
lineInteractionWidth?: number | undefined

Width used for line hit testing independently of the visible stroke width. See VerticalLineStyle.

View source — packages/core/src/lib/components/vertical-line.ts:69

left (optional)
left?: number | `${number}%` | undefined

Left edge coordinate or inset. See Length.

View source — packages/core/src/lib/style/positioning.ts:127

top (optional)
top?: number | `${number}%` | undefined

Top edge value or top envelope guide. See Length.

View source — packages/core/src/lib/style/positioning.ts:129

width (optional)
width?: Length | undefined

Related API: Length.

Horizontal extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:81

height (optional)
height?: Length | undefined

Related API: Length.

Vertical extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:83

minWidth (optional)
minWidth?: number | `${number}%` | undefined

Minimum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:85

maxWidth (optional)
maxWidth?: number | `${number}%` | undefined

Maximum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:87

minHeight (optional)
minHeight?: number | `${number}%` | undefined

Minimum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:89

maxHeight (optional)
maxHeight?: number | `${number}%` | undefined

Maximum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:91

padding (optional)
padding?: EdgeValues | undefined

Related API: EdgeValues.

Insets between the border box and content box. See EdgeValues.

View source — packages/core/src/lib/style/types.ts:93

overflow (optional)
overflow?: "clip" | "visible" | undefined

Selects "visible", "clip" for overflow. See BoxStyle.

View source — packages/core/src/lib/style/types.ts:95

alignSelf (optional)
alignSelf?: "auto" | "center" | "end" | "flex-end" | "flex-start" | "start" | "stretch" | undefined

This child’s cross-axis or block-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:121

justifySelf (optional)
justifySelf?: "auto" | "center" | "end" | "start" | "stretch" | undefined

This child’s inline-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:123

flexBasis (optional)
flexBasis?: Length | undefined

Related API: Length.

Initial main-axis size before flex growth or shrinkage. See Length.

View source — packages/core/src/lib/style/types.ts:125

flexGrow (optional)
flexGrow?: number | undefined

Relative share of positive free space assigned to this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:127

flexShrink (optional)
flexShrink?: number | undefined

Relative factor used when reducing main-axis size. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:129

gridColumnStart (optional)
gridColumnStart?: number | undefined

Explicit starting grid column. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:131

gridColumnSpan (optional)
gridColumnSpan?: number | undefined

Number of columns occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:133

gridRowStart (optional)
gridRowStart?: number | undefined

Explicit starting grid row. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:135

gridRowSpan (optional)
gridRowSpan?: number | undefined

Number of rows occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:137

stroke (optional)
stroke?: StrokeStyle | undefined

Related API: StrokeStyle.

Paint used for the outline. See StrokeStyle.

View source — packages/core/src/lib/style/types.ts:195

strokeWidth (optional)
strokeWidth?: number | undefined

Width of the painted outline. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:197

opacity (optional)
opacity?: number | undefined

Related API: opacity.

Opacity of the painted result. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:199

cursor (optional)
cursor?: string | undefined

Cursor shown while this target owns pointer presentation. See CursorStyle.

View source — packages/core/src/lib/style/types.ts:212

transition (optional)
transition?: PibblTransitionBinding | undefined

Related API: PibblTransitionBinding.

Visibility-transition binding applied to this primitive and its captured descendants. See SystemStyle.

View source — packages/core/src/lib/types.ts:69

custom (optional)
custom?: unknown

Application-defined style payload passed through the runtime. See SystemStyle.

View source — packages/core/src/lib/types.ts:71

filter (optional)
filter?: PibblFilter | readonly PibblFilter[] | undefined

Related API: PibblFilter.

Ordered pixel-only filters applied to the receiving primitive and its descendants. See PibblFilter.

View source — packages/core/src/lib/types.ts:76

Supported geometry and presentation properties for Wedge.

interface WedgeStyle extends SystemStyle, PaintStyle, CursorStyle, BoxStyle, LayoutItemStyle

Related API: WedgeStyle, SystemStyle, PaintStyle, CursorStyle, BoxStyle, LayoutItemStyle.

SystemStyle

PaintStyle

CursorStyle

BoxStyle

LayoutItemStyle

Length

Wedge

View source — packages/core/src/lib/components/wedge.ts:55

radius
radius: number | `${number}%`

Radius in the coordinate system of this geometry or effect. See Length.

View source — packages/core/src/lib/components/wedge.ts:58

startAngle
startAngle: number

Angle at which the arc or slice begins. See WedgeStyle.

View source — packages/core/src/lib/components/wedge.ts:60

endAngle
endAngle: number

Angle at which the arc or slice ends. See WedgeStyle.

View source — packages/core/src/lib/components/wedge.ts:62

cx (optional)
cx?: number | `${number}%` | undefined

Horizontal coordinate of the center. See Length.

View source — packages/core/src/lib/components/wedge.ts:64

cy (optional)
cy?: number | `${number}%` | undefined

Vertical coordinate of the center. See Length.

View source — packages/core/src/lib/components/wedge.ts:66

counterclockwise (optional)
counterclockwise?: boolean | undefined

Whether the arc follows the counterclockwise direction. See WedgeStyle.

View source — packages/core/src/lib/components/wedge.ts:68

lineInteractionWidth (optional)
lineInteractionWidth?: number | undefined

Width used for line hit testing independently of the visible stroke width. See WedgeStyle.

View source — packages/core/src/lib/components/wedge.ts:73

left (optional)
left?: number | `${number}%` | undefined

Left edge coordinate or inset. See Length.

View source — packages/core/src/lib/style/positioning.ts:127

top (optional)
top?: number | `${number}%` | undefined

Top edge value or top envelope guide. See Length.

View source — packages/core/src/lib/style/positioning.ts:129

width (optional)
width?: Length | undefined

Related API: Length.

Horizontal extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:81

height (optional)
height?: Length | undefined

Related API: Length.

Vertical extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:83

minWidth (optional)
minWidth?: number | `${number}%` | undefined

Minimum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:85

maxWidth (optional)
maxWidth?: number | `${number}%` | undefined

Maximum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:87

minHeight (optional)
minHeight?: number | `${number}%` | undefined

Minimum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:89

maxHeight (optional)
maxHeight?: number | `${number}%` | undefined

Maximum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:91

padding (optional)
padding?: EdgeValues | undefined

Related API: EdgeValues.

Insets between the border box and content box. See EdgeValues.

View source — packages/core/src/lib/style/types.ts:93

overflow (optional)
overflow?: "clip" | "visible" | undefined

Selects "visible", "clip" for overflow. See BoxStyle.

View source — packages/core/src/lib/style/types.ts:95

alignSelf (optional)
alignSelf?: "auto" | "center" | "end" | "flex-end" | "flex-start" | "start" | "stretch" | undefined

This child’s cross-axis or block-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:121

justifySelf (optional)
justifySelf?: "auto" | "center" | "end" | "start" | "stretch" | undefined

This child’s inline-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:123

flexBasis (optional)
flexBasis?: Length | undefined

Related API: Length.

Initial main-axis size before flex growth or shrinkage. See Length.

View source — packages/core/src/lib/style/types.ts:125

flexGrow (optional)
flexGrow?: number | undefined

Relative share of positive free space assigned to this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:127

flexShrink (optional)
flexShrink?: number | undefined

Relative factor used when reducing main-axis size. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:129

gridColumnStart (optional)
gridColumnStart?: number | undefined

Explicit starting grid column. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:131

gridColumnSpan (optional)
gridColumnSpan?: number | undefined

Number of columns occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:133

gridRowStart (optional)
gridRowStart?: number | undefined

Explicit starting grid row. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:135

gridRowSpan (optional)
gridRowSpan?: number | undefined

Number of rows occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:137

fill (optional)
fill?: FillStyle | undefined

Related API: FillStyle.

Paint used for the interior. See FillStyle.

View source — packages/core/src/lib/style/types.ts:193

stroke (optional)
stroke?: StrokeStyle | undefined

Related API: StrokeStyle.

Paint used for the outline. See StrokeStyle.

View source — packages/core/src/lib/style/types.ts:195

strokeWidth (optional)
strokeWidth?: number | undefined

Width of the painted outline. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:197

opacity (optional)
opacity?: number | undefined

Related API: opacity.

Opacity of the painted result. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:199

cursor (optional)
cursor?: string | undefined

Cursor shown while this target owns pointer presentation. See CursorStyle.

View source — packages/core/src/lib/style/types.ts:212

transition (optional)
transition?: PibblTransitionBinding | undefined

Related API: PibblTransitionBinding.

Visibility-transition binding applied to this primitive and its captured descendants. See SystemStyle.

View source — packages/core/src/lib/types.ts:69

custom (optional)
custom?: unknown

Application-defined style payload passed through the runtime. See SystemStyle.

View source — packages/core/src/lib/types.ts:71

filter (optional)
filter?: PibblFilter | readonly PibblFilter[] | undefined

Related API: PibblFilter.

Ordered pixel-only filters applied to the receiving primitive and its descendants. See PibblFilter.

View source — packages/core/src/lib/types.ts:76

Cursor presentation for an interactive primitive.

interface CursorStyle extends SystemStyle

Related API: CursorStyle, SystemStyle.

SystemStyle

ImgStyle

PathStyle

RectStyle

View source — packages/core/src/lib/style/types.ts:210

cursor (optional)
cursor?: string | undefined

Cursor shown while this target owns pointer presentation. See CursorStyle.

View source — packages/core/src/lib/style/types.ts:212

transition (optional)
transition?: PibblTransitionBinding | undefined

Related API: PibblTransitionBinding.

Visibility-transition binding applied to this primitive and its captured descendants. See SystemStyle.

View source — packages/core/src/lib/types.ts:69

custom (optional)
custom?: unknown

Application-defined style payload passed through the runtime. See SystemStyle.

View source — packages/core/src/lib/types.ts:71

filter (optional)
filter?: PibblFilter | readonly PibblFilter[] | undefined

Related API: PibblFilter.

Ordered pixel-only filters applied to the receiving primitive and its descendants. See PibblFilter.

View source — packages/core/src/lib/types.ts:76

Image source, sizing, opacity, outline, and pixel-grid alignment.

interface ImgStyle extends SystemStyle, CursorStyle, BoxStyle, LayoutItemStyle

Related API: ImgStyle, SystemStyle, CursorStyle, BoxStyle, LayoutItemStyle.

SystemStyle

CursorStyle

BoxStyle

LayoutItemStyle

StrokeStyle

PixelGridAlignment

Image

View source — packages/core/src/lib/style/types.ts:343

src
src: string

Image URL loaded by the drawing primitive. See ImgStyle.

View source — packages/core/src/lib/style/types.ts:345

stroke (optional)
stroke?: StrokeStyle | undefined

Related API: StrokeStyle.

Paint used for the outline. See StrokeStyle.

View source — packages/core/src/lib/style/types.ts:347

strokeWidth (optional)
strokeWidth?: number | undefined

Width of the painted outline. See ImgStyle.

View source — packages/core/src/lib/style/types.ts:349

opacity (optional)
opacity?: number | undefined

Related API: opacity.

Opacity of the painted result. See ImgStyle.

View source — packages/core/src/lib/style/types.ts:351

alignToPixelGrid (optional)
alignToPixelGrid?: PixelGridAlignment | undefined

Related API: PixelGridAlignment.

Pixel-grid alignment policy applied to the resolved geometry. See PixelGridAlignment.

View source — packages/core/src/lib/style/types.ts:355

left (optional)
left?: number | `${number}%` | undefined

Left edge coordinate or inset. See Length.

View source — packages/core/src/lib/style/positioning.ts:127

top (optional)
top?: number | `${number}%` | undefined

Top edge value or top envelope guide. See Length.

View source — packages/core/src/lib/style/positioning.ts:129

width (optional)
width?: Length | undefined

Related API: Length.

Horizontal extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:81

height (optional)
height?: Length | undefined

Related API: Length.

Vertical extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:83

minWidth (optional)
minWidth?: number | `${number}%` | undefined

Minimum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:85

maxWidth (optional)
maxWidth?: number | `${number}%` | undefined

Maximum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:87

minHeight (optional)
minHeight?: number | `${number}%` | undefined

Minimum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:89

maxHeight (optional)
maxHeight?: number | `${number}%` | undefined

Maximum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:91

padding (optional)
padding?: EdgeValues | undefined

Related API: EdgeValues.

Insets between the border box and content box. See EdgeValues.

View source — packages/core/src/lib/style/types.ts:93

overflow (optional)
overflow?: "clip" | "visible" | undefined

Selects "visible", "clip" for overflow. See BoxStyle.

View source — packages/core/src/lib/style/types.ts:95

alignSelf (optional)
alignSelf?: "auto" | "center" | "end" | "flex-end" | "flex-start" | "start" | "stretch" | undefined

This child’s cross-axis or block-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:121

justifySelf (optional)
justifySelf?: "auto" | "center" | "end" | "start" | "stretch" | undefined

This child’s inline-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:123

flexBasis (optional)
flexBasis?: Length | undefined

Related API: Length.

Initial main-axis size before flex growth or shrinkage. See Length.

View source — packages/core/src/lib/style/types.ts:125

flexGrow (optional)
flexGrow?: number | undefined

Relative share of positive free space assigned to this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:127

flexShrink (optional)
flexShrink?: number | undefined

Relative factor used when reducing main-axis size. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:129

gridColumnStart (optional)
gridColumnStart?: number | undefined

Explicit starting grid column. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:131

gridColumnSpan (optional)
gridColumnSpan?: number | undefined

Number of columns occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:133

gridRowStart (optional)
gridRowStart?: number | undefined

Explicit starting grid row. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:135

gridRowSpan (optional)
gridRowSpan?: number | undefined

Number of rows occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:137

cursor (optional)
cursor?: string | undefined

Cursor shown while this target owns pointer presentation. See CursorStyle.

View source — packages/core/src/lib/style/types.ts:212

transition (optional)
transition?: PibblTransitionBinding | undefined

Related API: PibblTransitionBinding.

Visibility-transition binding applied to this primitive and its captured descendants. See SystemStyle.

View source — packages/core/src/lib/types.ts:69

custom (optional)
custom?: unknown

Application-defined style payload passed through the runtime. See SystemStyle.

View source — packages/core/src/lib/types.ts:71

filter (optional)
filter?: PibblFilter | readonly PibblFilter[] | undefined

Related API: PibblFilter.

Ordered pixel-only filters applied to the receiving primitive and its descendants. See PibblFilter.

View source — packages/core/src/lib/types.ts:76

Fill, stroke, stroke width, and opacity shared by drawing primitives.

interface PaintStyle extends SystemStyle

Related API: PaintStyle, SystemStyle.

SystemStyle

FillStyle

StrokeStyle

PathStyle

RectStyle

SvgPathStyle

View source — packages/core/src/lib/style/types.ts:191

fill (optional)
fill?: FillStyle | undefined

Related API: FillStyle.

Paint used for the interior. See FillStyle.

View source — packages/core/src/lib/style/types.ts:193

stroke (optional)
stroke?: StrokeStyle | undefined

Related API: StrokeStyle.

Paint used for the outline. See StrokeStyle.

View source — packages/core/src/lib/style/types.ts:195

strokeWidth (optional)
strokeWidth?: number | undefined

Width of the painted outline. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:197

opacity (optional)
opacity?: number | undefined

Related API: opacity.

Opacity of the painted result. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:199

transition (optional)
transition?: PibblTransitionBinding | undefined

Related API: PibblTransitionBinding.

Visibility-transition binding applied to this primitive and its captured descendants. See SystemStyle.

View source — packages/core/src/lib/types.ts:69

custom (optional)
custom?: unknown

Application-defined style payload passed through the runtime. See SystemStyle.

View source — packages/core/src/lib/types.ts:71

filter (optional)
filter?: PibblFilter | readonly PibblFilter[] | undefined

Related API: PibblFilter.

Ordered pixel-only filters applied to the receiving primitive and its descendants. See PibblFilter.

View source — packages/core/src/lib/types.ts:76

Geometry, paint, layout, and interaction width for drawing a path.

interface PathStyle extends SystemStyle, PaintStyle, CursorStyle, BoxStyle, LayoutItemStyle

Related API: PathStyle, SystemStyle, PaintStyle, CursorStyle, BoxStyle, LayoutItemStyle.

SystemStyle

PaintStyle

CursorStyle

BoxStyle

LayoutItemStyle

PathGeometry

View source — packages/core/src/lib/style/types.ts:225

d
d: Path2D | PathGeometry

Related API: PathGeometry.

Geometry to draw or clip, supplied in the declared path representation. See PathGeometry.

View source — packages/core/src/lib/style/types.ts:231

lineInteractionWidth (optional)
lineInteractionWidth?: number | undefined

Width used for line hit testing independently of the visible stroke width. See PathStyle.

View source — packages/core/src/lib/style/types.ts:236

left (optional)
left?: number | `${number}%` | undefined

Left edge coordinate or inset. See Length.

View source — packages/core/src/lib/style/positioning.ts:127

top (optional)
top?: number | `${number}%` | undefined

Top edge value or top envelope guide. See Length.

View source — packages/core/src/lib/style/positioning.ts:129

width (optional)
width?: Length | undefined

Related API: Length.

Horizontal extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:81

height (optional)
height?: Length | undefined

Related API: Length.

Vertical extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:83

minWidth (optional)
minWidth?: number | `${number}%` | undefined

Minimum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:85

maxWidth (optional)
maxWidth?: number | `${number}%` | undefined

Maximum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:87

minHeight (optional)
minHeight?: number | `${number}%` | undefined

Minimum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:89

maxHeight (optional)
maxHeight?: number | `${number}%` | undefined

Maximum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:91

padding (optional)
padding?: EdgeValues | undefined

Related API: EdgeValues.

Insets between the border box and content box. See EdgeValues.

View source — packages/core/src/lib/style/types.ts:93

overflow (optional)
overflow?: "clip" | "visible" | undefined

Selects "visible", "clip" for overflow. See BoxStyle.

View source — packages/core/src/lib/style/types.ts:95

alignSelf (optional)
alignSelf?: "auto" | "center" | "end" | "flex-end" | "flex-start" | "start" | "stretch" | undefined

This child’s cross-axis or block-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:121

justifySelf (optional)
justifySelf?: "auto" | "center" | "end" | "start" | "stretch" | undefined

This child’s inline-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:123

flexBasis (optional)
flexBasis?: Length | undefined

Related API: Length.

Initial main-axis size before flex growth or shrinkage. See Length.

View source — packages/core/src/lib/style/types.ts:125

flexGrow (optional)
flexGrow?: number | undefined

Relative share of positive free space assigned to this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:127

flexShrink (optional)
flexShrink?: number | undefined

Relative factor used when reducing main-axis size. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:129

gridColumnStart (optional)
gridColumnStart?: number | undefined

Explicit starting grid column. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:131

gridColumnSpan (optional)
gridColumnSpan?: number | undefined

Number of columns occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:133

gridRowStart (optional)
gridRowStart?: number | undefined

Explicit starting grid row. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:135

gridRowSpan (optional)
gridRowSpan?: number | undefined

Number of rows occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:137

fill (optional)
fill?: FillStyle | undefined

Related API: FillStyle.

Paint used for the interior. See FillStyle.

View source — packages/core/src/lib/style/types.ts:193

stroke (optional)
stroke?: StrokeStyle | undefined

Related API: StrokeStyle.

Paint used for the outline. See StrokeStyle.

View source — packages/core/src/lib/style/types.ts:195

strokeWidth (optional)
strokeWidth?: number | undefined

Width of the painted outline. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:197

opacity (optional)
opacity?: number | undefined

Related API: opacity.

Opacity of the painted result. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:199

cursor (optional)
cursor?: string | undefined

Cursor shown while this target owns pointer presentation. See CursorStyle.

View source — packages/core/src/lib/style/types.ts:212

transition (optional)
transition?: PibblTransitionBinding | undefined

Related API: PibblTransitionBinding.

Visibility-transition binding applied to this primitive and its captured descendants. See SystemStyle.

View source — packages/core/src/lib/types.ts:69

custom (optional)
custom?: unknown

Application-defined style payload passed through the runtime. See SystemStyle.

View source — packages/core/src/lib/types.ts:71

filter (optional)
filter?: PibblFilter | readonly PibblFilter[] | undefined

Related API: PibblFilter.

Ordered pixel-only filters applied to the receiving primitive and its descendants. See PibblFilter.

View source — packages/core/src/lib/types.ts:76

Rectangle dimensions, paint, corner rounding, and pixel-grid alignment.

interface RectStyle extends
RoundedCornerStyle,
SystemStyle,
PaintStyle,
CursorStyle,
BoxStyle,
LayoutItemStyle

Related API: RectStyle, RoundedCornerStyle, SystemStyle, PaintStyle, CursorStyle, BoxStyle, LayoutItemStyle.

RoundedCornerStyle

SystemStyle

PaintStyle

CursorStyle

BoxStyle

LayoutItemStyle

Length

PixelGridAlignment

View source — packages/core/src/lib/style/types.ts:251

width
width: Length

Related API: Length.

Horizontal extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:260

height
height: Length

Related API: Length.

Vertical extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:262

alignToPixelGrid (optional)
alignToPixelGrid?: PixelGridAlignment | undefined

Related API: PixelGridAlignment.

Pixel-grid alignment policy applied to the resolved geometry. See PixelGridAlignment.

View source — packages/core/src/lib/style/types.ts:266

lineInteractionWidth (optional)
lineInteractionWidth?: number | undefined

Width used for line hit testing independently of the visible stroke width. See RectStyle.

View source — packages/core/src/lib/style/types.ts:271

left (optional)
left?: number | `${number}%` | undefined

Left edge coordinate or inset. See Length.

View source — packages/core/src/lib/style/positioning.ts:127

top (optional)
top?: number | `${number}%` | undefined

Top edge value or top envelope guide. See Length.

View source — packages/core/src/lib/style/positioning.ts:129

cornerRadius (optional)
cornerRadius?: number | `${number}%` | undefined

Uniform corner radius used where no per-corner override is supplied. See Length.

View source — packages/core/src/lib/style/types.ts:45

cornerRadii (optional)
cornerRadii?: readonly (number | `${number}%` | null | undefined)[] | undefined

Per-corner radii; nullish entries use the uniform corner radius. See Length.

View source — packages/core/src/lib/style/types.ts:47

minWidth (optional)
minWidth?: number | `${number}%` | undefined

Minimum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:85

maxWidth (optional)
maxWidth?: number | `${number}%` | undefined

Maximum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:87

minHeight (optional)
minHeight?: number | `${number}%` | undefined

Minimum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:89

maxHeight (optional)
maxHeight?: number | `${number}%` | undefined

Maximum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:91

padding (optional)
padding?: EdgeValues | undefined

Related API: EdgeValues.

Insets between the border box and content box. See EdgeValues.

View source — packages/core/src/lib/style/types.ts:93

overflow (optional)
overflow?: "clip" | "visible" | undefined

Selects "visible", "clip" for overflow. See BoxStyle.

View source — packages/core/src/lib/style/types.ts:95

alignSelf (optional)
alignSelf?: "auto" | "center" | "end" | "flex-end" | "flex-start" | "start" | "stretch" | undefined

This child’s cross-axis or block-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:121

justifySelf (optional)
justifySelf?: "auto" | "center" | "end" | "start" | "stretch" | undefined

This child’s inline-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:123

flexBasis (optional)
flexBasis?: Length | undefined

Related API: Length.

Initial main-axis size before flex growth or shrinkage. See Length.

View source — packages/core/src/lib/style/types.ts:125

flexGrow (optional)
flexGrow?: number | undefined

Relative share of positive free space assigned to this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:127

flexShrink (optional)
flexShrink?: number | undefined

Relative factor used when reducing main-axis size. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:129

gridColumnStart (optional)
gridColumnStart?: number | undefined

Explicit starting grid column. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:131

gridColumnSpan (optional)
gridColumnSpan?: number | undefined

Number of columns occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:133

gridRowStart (optional)
gridRowStart?: number | undefined

Explicit starting grid row. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:135

gridRowSpan (optional)
gridRowSpan?: number | undefined

Number of rows occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:137

fill (optional)
fill?: FillStyle | undefined

Related API: FillStyle.

Paint used for the interior. See FillStyle.

View source — packages/core/src/lib/style/types.ts:193

stroke (optional)
stroke?: StrokeStyle | undefined

Related API: StrokeStyle.

Paint used for the outline. See StrokeStyle.

View source — packages/core/src/lib/style/types.ts:195

strokeWidth (optional)
strokeWidth?: number | undefined

Width of the painted outline. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:197

opacity (optional)
opacity?: number | undefined

Related API: opacity.

Opacity of the painted result. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:199

cursor (optional)
cursor?: string | undefined

Cursor shown while this target owns pointer presentation. See CursorStyle.

View source — packages/core/src/lib/style/types.ts:212

transition (optional)
transition?: PibblTransitionBinding | undefined

Related API: PibblTransitionBinding.

Visibility-transition binding applied to this primitive and its captured descendants. See SystemStyle.

View source — packages/core/src/lib/types.ts:69

custom (optional)
custom?: unknown

Application-defined style payload passed through the runtime. See SystemStyle.

View source — packages/core/src/lib/types.ts:71

filter (optional)
filter?: PibblFilter | readonly PibblFilter[] | undefined

Related API: PibblFilter.

Ordered pixel-only filters applied to the receiving primitive and its descendants. See PibblFilter.

View source — packages/core/src/lib/types.ts:76

SVG path data together with paint, layout, and interaction styling.

interface SvgPathStyle extends SystemStyle, PaintStyle, CursorStyle, BoxStyle, LayoutItemStyle

Related API: SvgPathStyle, SystemStyle, PaintStyle, CursorStyle, BoxStyle, LayoutItemStyle.

SystemStyle

PaintStyle

CursorStyle

BoxStyle

LayoutItemStyle

SvgPath

View source — packages/core/src/lib/style/types.ts:284

d
d: string

Geometry to draw or clip, supplied in the declared path representation. See SvgPathStyle.

View source — packages/core/src/lib/style/types.ts:290

lineInteractionWidth (optional)
lineInteractionWidth?: number | undefined

Width used for line hit testing independently of the visible stroke width. See SvgPathStyle.

View source — packages/core/src/lib/style/types.ts:295

left (optional)
left?: number | `${number}%` | undefined

Left edge coordinate or inset. See Length.

View source — packages/core/src/lib/style/positioning.ts:127

top (optional)
top?: number | `${number}%` | undefined

Top edge value or top envelope guide. See Length.

View source — packages/core/src/lib/style/positioning.ts:129

width (optional)
width?: Length | undefined

Related API: Length.

Horizontal extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:81

height (optional)
height?: Length | undefined

Related API: Length.

Vertical extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:83

minWidth (optional)
minWidth?: number | `${number}%` | undefined

Minimum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:85

maxWidth (optional)
maxWidth?: number | `${number}%` | undefined

Maximum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:87

minHeight (optional)
minHeight?: number | `${number}%` | undefined

Minimum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:89

maxHeight (optional)
maxHeight?: number | `${number}%` | undefined

Maximum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:91

padding (optional)
padding?: EdgeValues | undefined

Related API: EdgeValues.

Insets between the border box and content box. See EdgeValues.

View source — packages/core/src/lib/style/types.ts:93

overflow (optional)
overflow?: "clip" | "visible" | undefined

Selects "visible", "clip" for overflow. See BoxStyle.

View source — packages/core/src/lib/style/types.ts:95

alignSelf (optional)
alignSelf?: "auto" | "center" | "end" | "flex-end" | "flex-start" | "start" | "stretch" | undefined

This child’s cross-axis or block-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:121

justifySelf (optional)
justifySelf?: "auto" | "center" | "end" | "start" | "stretch" | undefined

This child’s inline-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:123

flexBasis (optional)
flexBasis?: Length | undefined

Related API: Length.

Initial main-axis size before flex growth or shrinkage. See Length.

View source — packages/core/src/lib/style/types.ts:125

flexGrow (optional)
flexGrow?: number | undefined

Relative share of positive free space assigned to this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:127

flexShrink (optional)
flexShrink?: number | undefined

Relative factor used when reducing main-axis size. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:129

gridColumnStart (optional)
gridColumnStart?: number | undefined

Explicit starting grid column. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:131

gridColumnSpan (optional)
gridColumnSpan?: number | undefined

Number of columns occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:133

gridRowStart (optional)
gridRowStart?: number | undefined

Explicit starting grid row. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:135

gridRowSpan (optional)
gridRowSpan?: number | undefined

Number of rows occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:137

fill (optional)
fill?: FillStyle | undefined

Related API: FillStyle.

Paint used for the interior. See FillStyle.

View source — packages/core/src/lib/style/types.ts:193

stroke (optional)
stroke?: StrokeStyle | undefined

Related API: StrokeStyle.

Paint used for the outline. See StrokeStyle.

View source — packages/core/src/lib/style/types.ts:195

strokeWidth (optional)
strokeWidth?: number | undefined

Width of the painted outline. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:197

opacity (optional)
opacity?: number | undefined

Related API: opacity.

Opacity of the painted result. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:199

cursor (optional)
cursor?: string | undefined

Cursor shown while this target owns pointer presentation. See CursorStyle.

View source — packages/core/src/lib/style/types.ts:212

transition (optional)
transition?: PibblTransitionBinding | undefined

Related API: PibblTransitionBinding.

Visibility-transition binding applied to this primitive and its captured descendants. See SystemStyle.

View source — packages/core/src/lib/types.ts:69

custom (optional)
custom?: unknown

Application-defined style payload passed through the runtime. See SystemStyle.

View source — packages/core/src/lib/types.ts:71

filter (optional)
filter?: PibblFilter | readonly PibblFilter[] | undefined

Related API: PibblFilter.

Ordered pixel-only filters applied to the receiving primitive and its descendants. See PibblFilter.

View source — packages/core/src/lib/types.ts:76

Font, alignment, wrapping, overflow fitting, paint, and layout of Canvas text.

interface TextStyle extends SystemStyle, PaintStyle, CursorStyle, BoxStyle, LayoutItemStyle

Related API: TextStyle, SystemStyle, PaintStyle, CursorStyle, BoxStyle, LayoutItemStyle.

SystemStyle

PaintStyle

CursorStyle

BoxStyle

LayoutItemStyle

TextFit

Text

View source — packages/core/src/lib/style/types.ts:316

lineHeight (optional)
lineHeight?: number | undefined

Spacing between successive text lines. See TextStyle.

View source — packages/core/src/lib/style/types.ts:319

wrap (optional)
wrap?: boolean | undefined

Whether content may wrap into additional lines. See TextStyle.

View source — packages/core/src/lib/style/types.ts:321

fit (optional)
fit?: TextFit | undefined

Related API: TextFit.

Policy for fitting content within its available box. See TextFit.

View source — packages/core/src/lib/style/types.ts:323

font (optional)
font?: string | undefined

Canvas font string used to draw or measure text. See TextStyle.

View source — packages/core/src/lib/style/types.ts:325

textBaseline (optional)
textBaseline?: CanvasTextBaseline | undefined

Canvas baseline used when placing text. See TextStyle.

View source — packages/core/src/lib/style/types.ts:327

textAlign (optional)
textAlign?: CanvasTextAlign | undefined

Canvas horizontal alignment used when placing text. See TextStyle.

View source — packages/core/src/lib/style/types.ts:329

left (optional)
left?: number | `${number}%` | undefined

Left edge coordinate or inset. See Length.

View source — packages/core/src/lib/style/positioning.ts:127

top (optional)
top?: number | `${number}%` | undefined

Top edge value or top envelope guide. See Length.

View source — packages/core/src/lib/style/positioning.ts:129

width (optional)
width?: Length | undefined

Related API: Length.

Horizontal extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:81

height (optional)
height?: Length | undefined

Related API: Length.

Vertical extent in the units of the containing geometry or surface. See Length.

View source — packages/core/src/lib/style/types.ts:83

minWidth (optional)
minWidth?: number | `${number}%` | undefined

Minimum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:85

maxWidth (optional)
maxWidth?: number | `${number}%` | undefined

Maximum permitted width. See Length.

View source — packages/core/src/lib/style/types.ts:87

minHeight (optional)
minHeight?: number | `${number}%` | undefined

Minimum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:89

maxHeight (optional)
maxHeight?: number | `${number}%` | undefined

Maximum permitted height. See Length.

View source — packages/core/src/lib/style/types.ts:91

padding (optional)
padding?: EdgeValues | undefined

Related API: EdgeValues.

Insets between the border box and content box. See EdgeValues.

View source — packages/core/src/lib/style/types.ts:93

overflow (optional)
overflow?: "clip" | "visible" | undefined

Selects "visible", "clip" for overflow. See BoxStyle.

View source — packages/core/src/lib/style/types.ts:95

alignSelf (optional)
alignSelf?: "auto" | "center" | "end" | "flex-end" | "flex-start" | "start" | "stretch" | undefined

This child’s cross-axis or block-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:121

justifySelf (optional)
justifySelf?: "auto" | "center" | "end" | "start" | "stretch" | undefined

This child’s inline-axis alignment override. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:123

flexBasis (optional)
flexBasis?: Length | undefined

Related API: Length.

Initial main-axis size before flex growth or shrinkage. See Length.

View source — packages/core/src/lib/style/types.ts:125

flexGrow (optional)
flexGrow?: number | undefined

Relative share of positive free space assigned to this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:127

flexShrink (optional)
flexShrink?: number | undefined

Relative factor used when reducing main-axis size. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:129

gridColumnStart (optional)
gridColumnStart?: number | undefined

Explicit starting grid column. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:131

gridColumnSpan (optional)
gridColumnSpan?: number | undefined

Number of columns occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:133

gridRowStart (optional)
gridRowStart?: number | undefined

Explicit starting grid row. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:135

gridRowSpan (optional)
gridRowSpan?: number | undefined

Number of rows occupied by this child. See LayoutItemStyle.

View source — packages/core/src/lib/style/types.ts:137

fill (optional)
fill?: FillStyle | undefined

Related API: FillStyle.

Paint used for the interior. See FillStyle.

View source — packages/core/src/lib/style/types.ts:193

stroke (optional)
stroke?: StrokeStyle | undefined

Related API: StrokeStyle.

Paint used for the outline. See StrokeStyle.

View source — packages/core/src/lib/style/types.ts:195

strokeWidth (optional)
strokeWidth?: number | undefined

Width of the painted outline. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:197

opacity (optional)
opacity?: number | undefined

Related API: opacity.

Opacity of the painted result. See PaintStyle.

View source — packages/core/src/lib/style/types.ts:199

cursor (optional)
cursor?: string | undefined

Cursor shown while this target owns pointer presentation. See CursorStyle.

View source — packages/core/src/lib/style/types.ts:212

transition (optional)
transition?: PibblTransitionBinding | undefined

Related API: PibblTransitionBinding.

Visibility-transition binding applied to this primitive and its captured descendants. See SystemStyle.

View source — packages/core/src/lib/types.ts:69

custom (optional)
custom?: unknown

Application-defined style payload passed through the runtime. See SystemStyle.

View source — packages/core/src/lib/types.ts:71

filter (optional)
filter?: PibblFilter | readonly PibblFilter[] | undefined

Related API: PibblFilter.

Ordered pixel-only filters applied to the receiving primitive and its descendants. See PibblFilter.

View source — packages/core/src/lib/types.ts:76

Uniform and per-vertex corner radii for supported drawing primitives.

interface RoundedCornerStyle

Related API: RoundedCornerStyle.

Length

RectStyle

PolygonStyle

StarStyle

View source — packages/core/src/lib/style/types.ts:43

cornerRadius (optional)
cornerRadius?: number | `${number}%` | undefined

Uniform corner radius used where no per-corner override is supplied. See Length.

View source — packages/core/src/lib/style/types.ts:45

cornerRadii (optional)
cornerRadii?: readonly (number | `${number}%` | null | undefined)[] | undefined

Per-corner radii; nullish entries use the uniform corner radius. See Length.

View source — packages/core/src/lib/style/types.ts:47

Conditions on the available containing size, in logical units. All bounds are inclusive.

Full type declaration
type PibblSizeQuery = Readonly<
{
/** Minimum permitted width. See {@link PibblSizeQuery}. */
minWidth?: number;
/** Maximum permitted width. See {@link PibblSizeQuery}. */
maxWidth?: number;
/** Minimum permitted height. See {@link PibblSizeQuery}. */
minHeight?: number;
/** Maximum permitted height. See {@link PibblSizeQuery}. */
maxHeight?: number;
} & (
| {
/** Minimum permitted width. See {@link PibblSizeQuery}. */
minWidth: number;
}
| {
/** Maximum permitted width. See {@link PibblSizeQuery}. */
maxWidth: number;
}
| {
/** Minimum permitted height. See {@link PibblSizeQuery}. */
minHeight: number;
}
| {
/** Maximum permitted height. See {@link PibblSizeQuery}. */
maxHeight: number;
}
)
>

Related API: PibblSizeQuery.

PibblStyleRule

View source — packages/core/src/lib/types.ts:163

minWidth (optional)
minWidth?: number | undefined

Minimum permitted width. See PibblSizeQuery.

View source — packages/core/src/lib/types.ts:166

maxWidth (optional)
maxWidth?: number | undefined

Maximum permitted width. See PibblSizeQuery.

View source — packages/core/src/lib/types.ts:168

minHeight (optional)
minHeight?: number | undefined

Minimum permitted height. See PibblSizeQuery.

View source — packages/core/src/lib/types.ts:170

maxHeight (optional)
maxHeight?: number | undefined

Maximum permitted height. See PibblSizeQuery.

View source — packages/core/src/lib/types.ts:172

A conditional style contribution selected by a responsive size query.

type PibblStyleRule<S extends SystemStyle> = Readonly<{
/** Query that selects a style rule or resolves a hover result. See {@link PibblSizeQuery}. */
query: PibblSizeQuery;
/** Declared presentation and layout properties. See {@link SignalStyle}. */
style: Partial<SignalStyle<S>> & {
/** Not accepted in this variant; use the alternative fields instead. See {@link PibblStyleRule}. */
readonly when?: never;
};
}>

Related API: PibblStyleRule, SystemStyle, PibblSizeQuery.

SystemStyle

PibblSizeQuery

SignalStyle

PibblResponsiveStyle

View source — packages/core/src/lib/types.ts:201

query
query: PibblSizeQuery

Related API: PibblSizeQuery.

Query that selects a style rule or resolves a hover result. See PibblSizeQuery.

View source — packages/core/src/lib/types.ts:203

style
style: Partial<Readonly<{ [K in keyof S]: K extends "custom" ? S[K] : SignalValue<S[K]>; }>> & { readonly when?: never; }

Related API: SignalValue.

Declared presentation and layout properties. See SignalStyle.

View source — packages/core/src/lib/types.ts:205

Local ordered patches. Layout-item rules query the parent; internal rules query the assigned box.

type PibblResponsiveStyle<S extends SystemStyle> = SignalStyle<S> & Readonly<{
/**
* Ordered local patches against the available containing size, not this
* receiver's final size. All matches merge in order; later fields win.
* Hoist stable lists for Layer cache reuse. Intrinsic responsive measurement
* is unsupported: use a definite allocation and adapt its inner content.
*/
when?: readonly PibblStyleRule<S>[];
}>

Related API: PibblResponsiveStyle, SystemStyle, Layer, PibblStyleRule.

SystemStyle

SignalStyle

PibblStyleRule

PrimitiveInput

View source — packages/core/src/lib/types.ts:219

transition (optional)
transition?: { [K in keyof S]: K extends "custom" ? S[K] : SignalValue<S[K]>; }["transition"] | undefined

Related API: SignalValue.

Visibility-transition binding applied to this primitive and its captured descendants. See SystemStyle.

View source — packages/core/src/lib/types.ts:69

custom (optional)
custom?: { [K in keyof S]: K extends "custom" ? S[K] : SignalValue<S[K]>; }["custom"] | undefined

Related API: SignalValue.

Application-defined style payload passed through the runtime. See SystemStyle.

View source — packages/core/src/lib/types.ts:71

filter (optional)
filter?: { [K in keyof S]: K extends "custom" ? S[K] : SignalValue<S[K]>; }["filter"] | undefined

Related API: SignalValue.

Ordered pixel-only filters applied to the receiving primitive and its descendants. See PibblFilter.

View source — packages/core/src/lib/types.ts:76

when (optional)
when?: readonly Readonly<{ query: PibblSizeQuery; style: Partial<Readonly<{ [K in keyof S]: K extends "custom" ? S[K] : SignalValue<S[K]>; }>> & { readonly when?: never; }; }>[] | undefined

Related API: PibblSizeQuery, SignalValue.

Ordered local patches against the available containing size, not this receiver’s final size. All matches merge in order; later fields win. Hoist stable lists for Layer cache reuse. Intrinsic responsive measurement is unsupported: use a definite allocation and adapt its inner content.

View source — packages/core/src/lib/types.ts:226

Extracts the authored-input type from a branded primitive component.

type PrimitiveInputOf<C> = C extends PibblPrimitiveComponent<any, infer I> ? I : never

Related API: PrimitiveInputOf, PibblPrimitiveComponent.

PibblPrimitiveComponent

View source — packages/core/src/lib/element/types.ts:141

Declares the style and measurement features supported by a custom primitive.

interface PrimitiveCapabilities<P, S extends SystemStyle = SystemStyle, N extends SystemStyle = S, R extends SystemStyle = N>

Related API: PrimitiveCapabilities, SystemStyle.

SystemStyle

SpecifiedStyle

NormalizedStyle

StyleResolutionContext

ResolvedStyle

MeasureInput

PrimitiveProgramProps

MeasureResult

View source — packages/core/src/lib/types.ts:429

preserveSignalProps (optional)
preserveSignalProps?: readonly PreservedSignalPropKey<P>[] | undefined

Names props whose signal identity is preserved for the primitive program. See PreservedSignalPropKey.

View source — packages/core/src/lib/types.ts:439

childInput (optional)
childInput?: "structural" | "text" | undefined

Declares how the primitive receives and resolves its children. See PrimitiveCapabilities.

View source — packages/core/src/lib/types.ts:444

normalizeStyle (optional)
normalizeStyle?: ((style: SpecifiedStyle<S>) => NormalizedStyle<N>) | undefined

Related API: SpecifiedStyle, NormalizedStyle.

Applies primitive defaults and shorthand normalization before layout resolution. See SpecifiedStyle, NormalizedStyle.

  • style — Specified style values before normalization. See SpecifiedStyle.

Normalized style with the primitive’s shorthand and defaults applied. See NormalizedStyle .

View source — packages/core/src/lib/types.ts:452

resolveStyle (optional)
resolveStyle?: ((style: NormalizedStyle<N>, context: Readonly<StyleResolutionContext>) => ResolvedStyle<R>) | undefined

Related API: NormalizedStyle, StyleResolutionContext, ResolvedStyle.

Resolves normalized style using the current layout context. See NormalizedStyle, StyleResolutionContext, ResolvedStyle.

Resolved style ready for rendering. See ResolvedStyle.

View source — packages/core/src/lib/types.ts:461

measure (optional)
measure?: ((input: MeasureInput<PrimitiveProgramProps<P>, N>) => MeasureResult) | undefined

Related API: MeasureInput, PrimitiveProgramProps, MeasureResult.

Measures declared primitive inputs without painting or retaining draw commands. See MeasureInput, PrimitiveProgramProps, MeasureResult.

Measured dimensions or an unsupported measurement result. See MeasureResult.

View source — packages/core/src/lib/types.ts:472

The authored props and signal-capable inputs accepted by a primitive.

type PrimitiveInput<P, S extends SystemStyle = SystemStyle> = SignalProgramProps<P> & StyleField<PibblResponsiveStyle<SpecifiedStyle<S>>>

Related API: PrimitiveInput, SystemStyle, PibblResponsiveStyle, SpecifiedStyle.

SystemStyle

SignalProgramProps

PibblResponsiveStyle

SpecifiedStyle

PibblPhysics2DPropExtension

definePrimitive

View source — packages/core/src/lib/types.ts:249

style (optional)
style?: Signal<PibblResponsiveStyle<Readonly<S>> | undefined> | Signal<PibblResponsiveStyle<Readonly<S>>> | PibblResponsiveStyle<Readonly<S>> | undefined

Related API: Signal, PibblResponsiveStyle.

Declared presentation and layout properties. See SignalValue.

View source — packages/core/src/lib/types.ts:120

Resolved props passed into a primitive’s rendering program.

type PrimitiveProgramProps<P> = 0 extends 1 & P
? P
: Extract<UnionKeys<P>, PrimitiveReservedKey> extends never
? P
: never

Related API: PrimitiveProgramProps.

PrimitiveCapabilities

PrimitiveRender

definePrimitive

View source — packages/core/src/lib/types.ts:100

The synchronous drawing callback of a custom primitive.

type PrimitiveRender<P, R extends SystemStyle = SystemStyle> = (
props: Readonly<PrimitiveProgramProps<P>>,
style: ResolvedStyle<R>,
context: RenderingContext2D,
) => import('./element/types.js').PibblNodeInput | void

Related API: PrimitiveRender, SystemStyle, PrimitiveProgramProps, ResolvedStyle, RenderingContext2D, PibblNodeInput.

Child nodes to traverse after the primitive, or no children.

SystemStyle

PrimitiveProgramProps

ResolvedStyle

RenderingContext2D

definePrimitive

PibblNodeInput

View source — packages/core/src/lib/types.ts:411

A Canvas fill or Pibbl texture paint accepted by drawing primitives.

type FillStyle = CanvasRenderingContext2D["fillStyle"] | import('./textures/texture.js').TexturePaint

Related API: FillStyle, TexturePaint.

TexturePaint

PaintStyle

View source — packages/core/src/lib/types.ts:638

Policy for aligning drawing geometry to the pixel grid.

type PixelGridAlignment = "none" | "round" | "ceil" | "floor"

Related API: PixelGridAlignment.

RectStyle

ImgStyle

HorizontalLineStyle

VerticalLineStyle

View source — packages/core/src/lib/types.ts:688

Style after default values and shorthand normalization have been applied.

type NormalizedStyle<N extends SystemStyle> = Readonly<N>

Related API: NormalizedStyle, SystemStyle.

SystemStyle

PrimitiveCapabilities

MeasureInput

View source — packages/core/src/lib/types.ts:286

transition (optional)
transition?: N["transition"] | undefined

Visibility-transition binding applied to this primitive and its captured descendants. See SystemStyle.

View source — packages/core/src/lib/types.ts:69

custom (optional)
custom?: N["custom"] | undefined

Application-defined style payload passed through the runtime. See SystemStyle.

View source — packages/core/src/lib/types.ts:71

filter (optional)
filter?: N["filter"] | undefined

Ordered pixel-only filters applied to the receiving primitive and its descendants. See PibblFilter.

View source — packages/core/src/lib/types.ts:76

Style after input resolution, normalization, and layout resolution.

type ResolvedStyle<R extends SystemStyle> = Readonly<R>

Related API: ResolvedStyle, SystemStyle.

SystemStyle

PrimitiveCapabilities

PrimitiveRender

View source — packages/core/src/lib/types.ts:294

transition (optional)
transition?: R["transition"] | undefined

Visibility-transition binding applied to this primitive and its captured descendants. See SystemStyle.

View source — packages/core/src/lib/types.ts:69

custom (optional)
custom?: R["custom"] | undefined

Application-defined style payload passed through the runtime. See SystemStyle.

View source — packages/core/src/lib/types.ts:71

filter (optional)
filter?: R["filter"] | undefined

Ordered pixel-only filters applied to the receiving primitive and its descendants. See PibblFilter.

View source — packages/core/src/lib/types.ts:76

The caller-specified style before normalization and layout resolution.

type SpecifiedStyle<S extends SystemStyle> = Readonly<S>

Related API: SpecifiedStyle, SystemStyle.

SystemStyle

PrimitiveCapabilities

PrimitiveInput

View source — packages/core/src/lib/types.ts:278

transition (optional)
transition?: S["transition"] | undefined

Visibility-transition binding applied to this primitive and its captured descendants. See SystemStyle.

View source — packages/core/src/lib/types.ts:69

custom (optional)
custom?: S["custom"] | undefined

Application-defined style payload passed through the runtime. See SystemStyle.

View source — packages/core/src/lib/types.ts:71

filter (optional)
filter?: S["filter"] | undefined

Ordered pixel-only filters applied to the receiving primitive and its descendants. See PibblFilter.

View source — packages/core/src/lib/types.ts:76

Parent and measurement context available during primitive style resolution.

interface StyleResolutionContext

Related API: StyleResolutionContext.

LayoutBox

Constraints

PrimitiveCapabilities

View source — packages/core/src/lib/types.ts:303

allocation
allocation: Readonly<LayoutBox>

Related API: LayoutBox.

The layout rectangle assigned by the parent. See LayoutBox.

View source — packages/core/src/lib/types.ts:305

percentageBasis
percentageBasis: Readonly<LayoutBox>

Related API: LayoutBox.

The containing rectangle against which percentages resolve. See LayoutBox.

View source — packages/core/src/lib/types.ts:307

constraints
constraints: Readonly<Constraints>

Related API: Constraints.

Sizing limits and available dimensions for this operation. See Constraints.

View source — packages/core/src/lib/types.ts:309

component
component: string

Component identity or diagnostic name associated with this value. See StyleResolutionContext.

View source — packages/core/src/lib/types.ts:314

algorithm
algorithm: "render-dispatch"

Name of the layout algorithm producing this diagnostic or resolution. See StyleResolutionContext.

View source — packages/core/src/lib/types.ts:319

A Canvas stroke or Pibbl texture paint accepted by drawing primitives.

type StrokeStyle = CanvasRenderingContext2D["strokeStyle"] | import('./textures/texture.js').TexturePaint

Related API: StrokeStyle, TexturePaint.

TexturePaint

PaintStyle

ImgStyle

View source — packages/core/src/lib/types.ts:646

Transition bindings, pixel filters, and application-defined style extensions understood by the runtime.

interface SystemStyle

Related API: SystemStyle.

PibblFilter

PibblStyleRule

PibblResponsiveStyle

PrimitiveCapabilities

PibblTransitionBinding

View source — packages/core/src/lib/types.ts:67

transition (optional)
transition?: PibblTransitionBinding | undefined

Related API: PibblTransitionBinding.

Visibility-transition binding applied to this primitive and its captured descendants. See SystemStyle.

View source — packages/core/src/lib/types.ts:69

custom (optional)
custom?: unknown

Application-defined style payload passed through the runtime. See SystemStyle.

View source — packages/core/src/lib/types.ts:71

filter (optional)
filter?: PibblFilter | readonly PibblFilter[] | undefined

Related API: PibblFilter.

Ordered pixel-only filters applied to the receiving primitive and its descendants. See PibblFilter.

View source — packages/core/src/lib/types.ts:76

Read the Drawing, layout, and effects companion for ownership, adaptation, failure modes, and verification. Agent start provides the version-selection workflow.

Documentation built with @pibbl/core 0.0.2, revision 2dccb19. ALPHA — NOT FOR PRODUCTION USE.