API reference Generated from Sone's TypeScript declarations — every public prop, every type.
This page is regenerated from dist/node.d.mts on every build via fumadocs-typescript . If you spot a discrepancy with the runtime, the runtime is right — file an issue and we'll re-extract.
For prose-style pages on individual nodes, see the section guides: Layout , Typography , Content nodes , Output .
Layout LayoutProps Text TextProps · DefaultTextProps · TextDefaultProps Span SpanProps Grid GridProps · GridTrack Photo PhotoProps Path PathProps Table TableProps · TableRowProps · TableCellProps List ListProps ClipGroup ClipGroupProps Render config SoneRenderConfig · SoneHeaderFooter · SoneDebugConfig
TextProps Text block properties extending span properties
lineBreak?"greedy" | "knuth-plass"
textOverflow?"clip" | "ellipsis"
align?"left" | "right" | "center" | "justify"
textWrap?"wrap" | "balance"
hyphenation?string | boolean
baseDir?"ltr" | "rtl" | "auto"
orientation?0 | 90 | 180 | 270
blocks?SoneParagraphBlock[]
color?ColorValue | GradientNode[]
style?"normal" | "italic" | "oblique"
weight?number | (string & {}) | "normal" | "bold" | "lighter" | "bolder"
dropShadows?(string | CssShadowProperties)[]
underlineColor?ColorValue | null
lineThroughColor?ColorValue | null
overlineColor?ColorValue | null
highlightColor?ColorValue | null
alignContent?AlignContent
bottom?number | `${number}%`
boxSizing?"border-box" | "content-box"
display?"none" | "flex" | "contents"
end?number | `${number}%`
flexBasis?number | "auto" | `${number}%`
flexDirection?"row" | "column" | "row-reverse" | "column-reverse"
flexWrap?"wrap" | "nowrap" | "wrap-reverse"
height?number | "auto" | `${number}%`
justifyContent?JustifyContent
left?number | `${number}%`
margin?number | "auto" | `${number}%`
marginBottom?number | "auto" | `${number}%`
marginEnd?number | "auto" | `${number}%`
marginLeft?number | "auto" | `${number}%`
marginRight?number | "auto" | `${number}%`
marginStart?number | "auto" | `${number}%`
marginTop?number | "auto" | `${number}%`
marginInline?number | "auto" | `${number}%`
marginBlock?number | "auto" | `${number}%`
maxHeight?number | `${number}%`
maxWidth?number | `${number}%`
minHeight?number | `${number}%`
minWidth?number | `${number}%`
overflow?"visible" | "hidden" | "scroll"
pageBreak?"before" | "after" | "avoid"
padding?number | `${number}%`
paddingBottom?number | `${number}%`
paddingEnd?number | `${number}%`
paddingLeft?number | `${number}%`
paddingRight?number | `${number}%`
paddingStart?number | `${number}%`
paddingTop?number | `${number}%`
paddingInline?number | `${number}%`
paddingBlock?number | `${number}%`
position?"absolute" | "relative" | "static"
right?number | `${number}%`
start?number | `${number}%`
top?number | `${number}%`
insetInline?number | `${number}%`
insetBlock?number | `${number}%`
inset?number | `${number}%`
width?number | "auto" | `${number}%`
background?(PhotoNode | ColorValue | GradientNode)[]
shadows?(string | CssShadowProperties)[]
DefaultTextProps lineBreak"greedy" | "knuth-plass"
textOverflow"clip" | "ellipsis"
align"left" | "right" | "center" | "justify"
textWrap"wrap" | "balance"
hyphenationstring | boolean
baseDir"ltr" | "rtl" | "auto"
orientation0 | 90 | 180 | 270
blocksSoneParagraphBlock[]
colorColorValue | GradientNode[]
style"normal" | "italic" | "oblique"
weightnumber | (string & {}) | "normal" | "bold" | "lighter" | "bolder"
dropShadows(string | CssShadowProperties)[]
underlineColorColorValue | null
lineThroughColorColorValue | null
overlineColorColorValue | null
highlightColorColorValue | null
TextDefaultProps lineBreak?"greedy" | "knuth-plass"
textOverflow?"clip" | "ellipsis"
align?"left" | "right" | "center" | "justify"
textWrap?"wrap" | "balance"
hyphenation?string | boolean
baseDir?"ltr" | "rtl" | "auto"
orientation?0 | 90 | 180 | 270
blocks?SoneParagraphBlock[]
color?ColorValue | GradientNode[]
style?"normal" | "italic" | "oblique"
weight?number | (string & {}) | "normal" | "bold" | "lighter" | "bolder"
dropShadows?(string | CssShadowProperties)[]
underlineColor?ColorValue | null
lineThroughColor?ColorValue | null
overlineColor?ColorValue | null
highlightColor?ColorValue | null