feat: update types to support annotation point

part of #12698
This commit is contained in:
Matthias
2026-01-09 18:59:05 +01:00
parent 123897ea89
commit 91b921cc88

View File

@@ -6,25 +6,36 @@ from typing_extensions import TypedDict
class _BaseAnnotationType(TypedDict, total=False):
start: str | datetime
end: str | datetime
y_start: float
y_end: float
color: str
label: str
z_level: int
class AreaAnnotationType(_BaseAnnotationType, total=False):
class _Base2DAnnotationType(_BaseAnnotationType, total=False):
start: str | datetime
end: str | datetime
y_start: float
y_end: float
class AreaAnnotationType(_Base2DAnnotationType, total=False):
type: Required[Literal["area"]]
class LineAnnotationType(_BaseAnnotationType, total=False):
class LineAnnotationType(_Base2DAnnotationType, total=False):
type: Required[Literal["line"]]
width: int
line_style: Literal["solid", "dashed", "dotted"]
AnnotationType = AreaAnnotationType | LineAnnotationType
class PointAnnotationType(_BaseAnnotationType, total=False):
type: Required[Literal["point"]]
x: str | datetime
y: float
size: int
shape: Literal["circle", "rect", "roundRect", "triangle", "pin", "arrow", "none"]
AnnotationType = AreaAnnotationType | LineAnnotationType | PointAnnotationType
AnnotationTypeTA: TypeAdapter[AnnotationType] = TypeAdapter(AnnotationType)