Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
55 changes: 43 additions & 12 deletions plugin-api-standalone.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1673,6 +1673,11 @@ interface LayoutMixin extends DimensionAndPositionMixin, AutoLayoutChildrenMixin
resizeWithoutConstraints(width: number, height: number): void
rescale(scale: number): void
}
interface AspectRatioLockMixin {
readonly targetAspectRatio: Vector | null
lockAspectRatio(): void
unlockAspectRatio(): void
}
interface BlendMixin extends MinimalBlendMixin {
isMask: boolean
maskType: MaskType
Expand Down Expand Up @@ -1818,6 +1823,7 @@ interface BaseFrameMixin
ExportMixin,
IndividualStrokesMixin,
AutoLayoutMixin,
AspectRatioLockMixin,
AnnotationsMixin,
DevStatusMixin {
readonly detachedInfo: DetachedInfo | null
Expand Down Expand Up @@ -2134,7 +2140,8 @@ interface GroupNode
DeprecatedBackgroundMixin,
BlendMixin,
LayoutMixin,
ExportMixin {
ExportMixin,
AspectRatioLockMixin {
readonly type: 'GROUP'
clone(): GroupNode
}
Expand All @@ -2148,25 +2155,41 @@ interface RectangleNode
CornerMixin,
RectangleCornerMixin,
IndividualStrokesMixin,
AnnotationsMixin {
AnnotationsMixin,
AspectRatioLockMixin {
readonly type: 'RECTANGLE'
clone(): RectangleNode
}
interface LineNode extends DefaultShapeMixin, ConstraintMixin, AnnotationsMixin {
readonly type: 'LINE'
clone(): LineNode
}
interface EllipseNode extends DefaultShapeMixin, ConstraintMixin, CornerMixin, AnnotationsMixin {
interface EllipseNode
extends DefaultShapeMixin,
ConstraintMixin,
CornerMixin,
AnnotationsMixin,
AspectRatioLockMixin {
readonly type: 'ELLIPSE'
clone(): EllipseNode
arcData: ArcData
}
interface PolygonNode extends DefaultShapeMixin, ConstraintMixin, CornerMixin, AnnotationsMixin {
interface PolygonNode
extends DefaultShapeMixin,
ConstraintMixin,
CornerMixin,
AnnotationsMixin,
AspectRatioLockMixin {
readonly type: 'POLYGON'
clone(): PolygonNode
pointCount: number
}
interface StarNode extends DefaultShapeMixin, ConstraintMixin, CornerMixin, AnnotationsMixin {
interface StarNode
extends DefaultShapeMixin,
ConstraintMixin,
CornerMixin,
AnnotationsMixin,
AspectRatioLockMixin {
readonly type: 'STAR'
clone(): StarNode
pointCount: number
Expand All @@ -2177,15 +2200,17 @@ interface VectorNode
ConstraintMixin,
CornerMixin,
VectorLikeMixin,
AnnotationsMixin {
AnnotationsMixin,
AspectRatioLockMixin {
readonly type: 'VECTOR'
clone(): VectorNode
}
interface TextNode
extends DefaultShapeMixin,
ConstraintMixin,
NonResizableTextMixin,
AnnotationsMixin {
AnnotationsMixin,
AspectRatioLockMixin {
readonly type: 'TEXT'
clone(): TextNode
textAlignHorizontal: 'LEFT' | 'CENTER' | 'RIGHT' | 'JUSTIFIED'
Expand Down Expand Up @@ -2269,7 +2294,8 @@ interface BooleanOperationNode
extends DefaultShapeMixin,
ChildrenMixin,
CornerMixin,
ContainerMixin {
ContainerMixin,
AspectRatioLockMixin {
readonly type: 'BOOLEAN_OPERATION'
clone(): BooleanOperationNode
booleanOperation: 'UNION' | 'INTERSECT' | 'SUBTRACT' | 'EXCLUDE'
Expand All @@ -2282,7 +2308,11 @@ interface StickyNode extends OpaqueNodeMixin, MinimalFillsMixin, MinimalBlendMix
isWideWidth: boolean
clone(): StickyNode
}
interface StampNode extends DefaultShapeMixin, ConstraintMixin, StickableMixin {
interface StampNode
extends DefaultShapeMixin,
ConstraintMixin,
StickableMixin,
AspectRatioLockMixin {
readonly type: 'STAMP'
clone(): StampNode
getAuthorAsync(): Promise<BaseUser | null>
Expand Down Expand Up @@ -2317,11 +2347,12 @@ interface HighlightNode
ConstraintMixin,
CornerMixin,
VectorLikeMixin,
StickableMixin {
StickableMixin,
AspectRatioLockMixin {
readonly type: 'HIGHLIGHT'
clone(): HighlightNode
}
interface WashiTapeNode extends DefaultShapeMixin, StickableMixin {
interface WashiTapeNode extends DefaultShapeMixin, StickableMixin, AspectRatioLockMixin {
readonly type: 'WASHI_TAPE'
clone(): WashiTapeNode
}
Expand Down Expand Up @@ -2678,4 +2709,4 @@ interface FindAllCriteria<T extends NodeType[]> {
}

// prettier-ignore
export { ArgFreeEventType, PluginAPI, VersionHistoryResult, VariablesAPI, LibraryVariableCollection, LibraryVariable, TeamLibraryAPI, PaymentStatus, PaymentsAPI, ClientStorageAPI, NotificationOptions, NotifyDequeueReason, NotificationHandler, ShowUIOptions, UIPostMessageOptions, OnMessageProperties, MessageEventHandler, UIAPI, UtilAPI, ColorPalette, ColorPalettes, ConstantsAPI, CodegenEvent, CodegenPreferences, CodegenPreferencesEvent, CodegenResult, CodegenAPI, DevResource, DevResourceWithNodeId, LinkPreviewEvent, PlainTextElement, LinkPreviewResult, AuthEvent, DevResourceOpenEvent, AuthResult, VSCodeAPI, DevResourcesAPI, TimerAPI, ViewportAPI, TextReviewAPI, ParameterValues, SuggestionResults, ParameterInputEvent, ParametersAPI, RunParametersEvent, OpenDevResourcesEvent, RunEvent, DropEvent, DropItem, DropFile, DocumentChangeEvent, StyleChangeEvent, StyleChange, BaseDocumentChange, BaseNodeChange, RemovedNode, CreateChange, DeleteChange, PropertyChange, BaseStyleChange, StyleCreateChange, StyleDeleteChange, StylePropertyChange, DocumentChange, NodeChangeProperty, NodeChangeEvent, NodeChange, StyleChangeProperty, TextReviewEvent, TextReviewRange, Transform, Vector, Rect, RGB, RGBA, FontName, TextCase, TextDecoration, TextDecorationStyle, TextDecorationOffset, TextDecorationThickness, TextDecorationColor, OpenTypeFeature, ArcData, DropShadowEffect, InnerShadowEffect, BlurEffect, Effect, ConstraintType, Constraints, ColorStop, ImageFilters, SolidPaint, GradientPaint, ImagePaint, VideoPaint, Paint, Guide, RowsColsLayoutGrid, GridLayoutGrid, LayoutGrid, ExportSettingsConstraints, ExportSettingsImage, ExportSettingsSVGBase, ExportSettingsSVG, ExportSettingsSVGString, ExportSettingsPDF, ExportSettingsREST, ExportSettings, WindingRule, VectorVertex, VectorSegment, VectorRegion, VectorNetwork, VectorPath, VectorPaths, LetterSpacing, LineHeight, LeadingTrim, HyperlinkTarget, TextListOptions, BlendMode, MaskType, Font, TextStyleOverrideType, StyledTextSegment, Reaction, VariableDataType, ExpressionFunction, Expression, VariableValueWithExpression, VariableData, ConditionalBlock, DevStatus, Action, SimpleTransition, DirectionalTransition, Transition, Trigger, Navigation, Easing, EasingFunctionBezier, EasingFunctionSpring, OverflowDirection, OverlayPositionType, OverlayBackground, OverlayBackgroundInteraction, PublishStatus, ConnectorEndpointPosition, ConnectorEndpointPositionAndEndpointNodeId, ConnectorEndpointEndpointNodeIdAndMagnet, ConnectorEndpoint, ConnectorStrokeCap, BaseNodeMixin, PluginDataMixin, DevResourcesMixin, DevStatusMixin, SceneNodeMixin, VariableBindableNodeField, VariableBindableTextField, VariableBindablePaintField, VariableBindablePaintStyleField, VariableBindableColorStopField, VariableBindableEffectField, VariableBindableEffectStyleField, VariableBindableLayoutGridField, VariableBindableGridStyleField, VariableBindableComponentPropertyField, VariableBindableComponentPropertyDefinitionField, StickableMixin, ChildrenMixin, ConstraintMixin, DimensionAndPositionMixin, LayoutMixin, BlendMixin, ContainerMixin, DeprecatedBackgroundMixin, StrokeCap, StrokeJoin, HandleMirroring, AutoLayoutMixin, AutoLayoutChildrenMixin, InferredAutoLayoutResult, DetachedInfo, MinimalStrokesMixin, IndividualStrokesMixin, MinimalFillsMixin, GeometryMixin, CornerMixin, RectangleCornerMixin, ExportMixin, FramePrototypingMixin, VectorLikeMixin, ReactionMixin, DocumentationLink, PublishableMixin, DefaultShapeMixin, BaseFrameMixin, DefaultFrameMixin, OpaqueNodeMixin, MinimalBlendMixin, Annotation, AnnotationProperty, AnnotationPropertyType, AnnotationsMixin, Measurement, MeasurementSide, MeasurementOffset, MeasurementsMixin, VariantMixin, ComponentPropertiesMixin, NonResizableTextMixin, TextSublayerNode, DocumentNode, ExplicitVariableModesMixin, PageNode, FrameNode, GroupNode, SliceNode, RectangleNode, LineNode, EllipseNode, PolygonNode, StarNode, VectorNode, TextNode, ComponentPropertyType, InstanceSwapPreferredValue, ComponentPropertyOptions, ComponentPropertyDefinitions, ComponentSetNode, ComponentNode, ComponentProperties, InstanceNode, BooleanOperationNode, StickyNode, StampNode, TableNode, TableCellNode, HighlightNode, WashiTapeNode, ShapeWithTextNode, CodeBlockNode, LabelSublayerNode, ConnectorNode, VariableResolvedDataType, VariableAlias, VariableValue, VariableScope, CodeSyntaxPlatform, Variable, VariableCollection, WidgetNode, EmbedData, EmbedNode, LinkUnfurlData, LinkUnfurlNode, MediaData, MediaNode, SectionNode, BaseNode, SceneNode, NodeType, StyleType, InheritedStyleField, StyleConsumers, BaseStyleMixin, PaintStyle, TextStyle, EffectStyle, GridStyle, BaseStyle, Image, Video, BaseUser, User, ActiveUser, FindAllCriteria }
export { ArgFreeEventType, PluginAPI, VersionHistoryResult, VariablesAPI, LibraryVariableCollection, LibraryVariable, TeamLibraryAPI, PaymentStatus, PaymentsAPI, ClientStorageAPI, NotificationOptions, NotifyDequeueReason, NotificationHandler, ShowUIOptions, UIPostMessageOptions, OnMessageProperties, MessageEventHandler, UIAPI, UtilAPI, ColorPalette, ColorPalettes, ConstantsAPI, CodegenEvent, CodegenPreferences, CodegenPreferencesEvent, CodegenResult, CodegenAPI, DevResource, DevResourceWithNodeId, LinkPreviewEvent, PlainTextElement, LinkPreviewResult, AuthEvent, DevResourceOpenEvent, AuthResult, VSCodeAPI, DevResourcesAPI, TimerAPI, ViewportAPI, TextReviewAPI, ParameterValues, SuggestionResults, ParameterInputEvent, ParametersAPI, RunParametersEvent, OpenDevResourcesEvent, RunEvent, DropEvent, DropItem, DropFile, DocumentChangeEvent, StyleChangeEvent, StyleChange, BaseDocumentChange, BaseNodeChange, RemovedNode, CreateChange, DeleteChange, PropertyChange, BaseStyleChange, StyleCreateChange, StyleDeleteChange, StylePropertyChange, DocumentChange, NodeChangeProperty, NodeChangeEvent, NodeChange, StyleChangeProperty, TextReviewEvent, TextReviewRange, Transform, Vector, Rect, RGB, RGBA, FontName, TextCase, TextDecoration, TextDecorationStyle, TextDecorationOffset, TextDecorationThickness, TextDecorationColor, OpenTypeFeature, ArcData, DropShadowEffect, InnerShadowEffect, BlurEffect, Effect, ConstraintType, Constraints, ColorStop, ImageFilters, SolidPaint, GradientPaint, ImagePaint, VideoPaint, Paint, Guide, RowsColsLayoutGrid, GridLayoutGrid, LayoutGrid, ExportSettingsConstraints, ExportSettingsImage, ExportSettingsSVGBase, ExportSettingsSVG, ExportSettingsSVGString, ExportSettingsPDF, ExportSettingsREST, ExportSettings, WindingRule, VectorVertex, VectorSegment, VectorRegion, VectorNetwork, VectorPath, VectorPaths, LetterSpacing, LineHeight, LeadingTrim, HyperlinkTarget, TextListOptions, BlendMode, MaskType, Font, TextStyleOverrideType, StyledTextSegment, Reaction, VariableDataType, ExpressionFunction, Expression, VariableValueWithExpression, VariableData, ConditionalBlock, DevStatus, Action, SimpleTransition, DirectionalTransition, Transition, Trigger, Navigation, Easing, EasingFunctionBezier, EasingFunctionSpring, OverflowDirection, OverlayPositionType, OverlayBackground, OverlayBackgroundInteraction, PublishStatus, ConnectorEndpointPosition, ConnectorEndpointPositionAndEndpointNodeId, ConnectorEndpointEndpointNodeIdAndMagnet, ConnectorEndpoint, ConnectorStrokeCap, BaseNodeMixin, PluginDataMixin, DevResourcesMixin, DevStatusMixin, SceneNodeMixin, VariableBindableNodeField, VariableBindableTextField, VariableBindablePaintField, VariableBindablePaintStyleField, VariableBindableColorStopField, VariableBindableEffectField, VariableBindableEffectStyleField, VariableBindableLayoutGridField, VariableBindableGridStyleField, VariableBindableComponentPropertyField, VariableBindableComponentPropertyDefinitionField, StickableMixin, ChildrenMixin, ConstraintMixin, DimensionAndPositionMixin, LayoutMixin, AspectRatioLockMixin, BlendMixin, ContainerMixin, DeprecatedBackgroundMixin, StrokeCap, StrokeJoin, HandleMirroring, AutoLayoutMixin, AutoLayoutChildrenMixin, InferredAutoLayoutResult, DetachedInfo, MinimalStrokesMixin, IndividualStrokesMixin, MinimalFillsMixin, GeometryMixin, CornerMixin, RectangleCornerMixin, ExportMixin, FramePrototypingMixin, VectorLikeMixin, ReactionMixin, DocumentationLink, PublishableMixin, DefaultShapeMixin, BaseFrameMixin, DefaultFrameMixin, OpaqueNodeMixin, MinimalBlendMixin, Annotation, AnnotationProperty, AnnotationPropertyType, AnnotationsMixin, Measurement, MeasurementSide, MeasurementOffset, MeasurementsMixin, VariantMixin, ComponentPropertiesMixin, NonResizableTextMixin, TextSublayerNode, DocumentNode, ExplicitVariableModesMixin, PageNode, FrameNode, GroupNode, SliceNode, RectangleNode, LineNode, EllipseNode, PolygonNode, StarNode, VectorNode, TextNode, ComponentPropertyType, InstanceSwapPreferredValue, ComponentPropertyOptions, ComponentPropertyDefinitions, ComponentSetNode, ComponentNode, ComponentProperties, InstanceNode, BooleanOperationNode, StickyNode, StampNode, TableNode, TableCellNode, HighlightNode, WashiTapeNode, ShapeWithTextNode, CodeBlockNode, LabelSublayerNode, ConnectorNode, VariableResolvedDataType, VariableAlias, VariableValue, VariableScope, CodeSyntaxPlatform, Variable, VariableCollection, WidgetNode, EmbedData, EmbedNode, LinkUnfurlData, LinkUnfurlNode, MediaData, MediaNode, SectionNode, BaseNode, SceneNode, NodeType, StyleType, InheritedStyleField, StyleConsumers, BaseStyleMixin, PaintStyle, TextStyle, EffectStyle, GridStyle, BaseStyle, Image, Video, BaseUser, User, ActiveUser, FindAllCriteria }
53 changes: 42 additions & 11 deletions plugin-api.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1669,6 +1669,11 @@ interface LayoutMixin extends DimensionAndPositionMixin, AutoLayoutChildrenMixin
resizeWithoutConstraints(width: number, height: number): void
rescale(scale: number): void
}
interface AspectRatioLockMixin {
readonly targetAspectRatio: Vector | null
lockAspectRatio(): void
unlockAspectRatio(): void
}
interface BlendMixin extends MinimalBlendMixin {
isMask: boolean
maskType: MaskType
Expand Down Expand Up @@ -1814,6 +1819,7 @@ interface BaseFrameMixin
ExportMixin,
IndividualStrokesMixin,
AutoLayoutMixin,
AspectRatioLockMixin,
AnnotationsMixin,
DevStatusMixin {
readonly detachedInfo: DetachedInfo | null
Expand Down Expand Up @@ -2130,7 +2136,8 @@ interface GroupNode
DeprecatedBackgroundMixin,
BlendMixin,
LayoutMixin,
ExportMixin {
ExportMixin,
AspectRatioLockMixin {
readonly type: 'GROUP'
clone(): GroupNode
}
Expand All @@ -2144,25 +2151,41 @@ interface RectangleNode
CornerMixin,
RectangleCornerMixin,
IndividualStrokesMixin,
AnnotationsMixin {
AnnotationsMixin,
AspectRatioLockMixin {
readonly type: 'RECTANGLE'
clone(): RectangleNode
}
interface LineNode extends DefaultShapeMixin, ConstraintMixin, AnnotationsMixin {
readonly type: 'LINE'
clone(): LineNode
}
interface EllipseNode extends DefaultShapeMixin, ConstraintMixin, CornerMixin, AnnotationsMixin {
interface EllipseNode
extends DefaultShapeMixin,
ConstraintMixin,
CornerMixin,
AnnotationsMixin,
AspectRatioLockMixin {
readonly type: 'ELLIPSE'
clone(): EllipseNode
arcData: ArcData
}
interface PolygonNode extends DefaultShapeMixin, ConstraintMixin, CornerMixin, AnnotationsMixin {
interface PolygonNode
extends DefaultShapeMixin,
ConstraintMixin,
CornerMixin,
AnnotationsMixin,
AspectRatioLockMixin {
readonly type: 'POLYGON'
clone(): PolygonNode
pointCount: number
}
interface StarNode extends DefaultShapeMixin, ConstraintMixin, CornerMixin, AnnotationsMixin {
interface StarNode
extends DefaultShapeMixin,
ConstraintMixin,
CornerMixin,
AnnotationsMixin,
AspectRatioLockMixin {
readonly type: 'STAR'
clone(): StarNode
pointCount: number
Expand All @@ -2173,15 +2196,17 @@ interface VectorNode
ConstraintMixin,
CornerMixin,
VectorLikeMixin,
AnnotationsMixin {
AnnotationsMixin,
AspectRatioLockMixin {
readonly type: 'VECTOR'
clone(): VectorNode
}
interface TextNode
extends DefaultShapeMixin,
ConstraintMixin,
NonResizableTextMixin,
AnnotationsMixin {
AnnotationsMixin,
AspectRatioLockMixin {
readonly type: 'TEXT'
clone(): TextNode
textAlignHorizontal: 'LEFT' | 'CENTER' | 'RIGHT' | 'JUSTIFIED'
Expand Down Expand Up @@ -2265,7 +2290,8 @@ interface BooleanOperationNode
extends DefaultShapeMixin,
ChildrenMixin,
CornerMixin,
ContainerMixin {
ContainerMixin,
AspectRatioLockMixin {
readonly type: 'BOOLEAN_OPERATION'
clone(): BooleanOperationNode
booleanOperation: 'UNION' | 'INTERSECT' | 'SUBTRACT' | 'EXCLUDE'
Expand All @@ -2278,7 +2304,11 @@ interface StickyNode extends OpaqueNodeMixin, MinimalFillsMixin, MinimalBlendMix
isWideWidth: boolean
clone(): StickyNode
}
interface StampNode extends DefaultShapeMixin, ConstraintMixin, StickableMixin {
interface StampNode
extends DefaultShapeMixin,
ConstraintMixin,
StickableMixin,
AspectRatioLockMixin {
readonly type: 'STAMP'
clone(): StampNode
getAuthorAsync(): Promise<BaseUser | null>
Expand Down Expand Up @@ -2313,11 +2343,12 @@ interface HighlightNode
ConstraintMixin,
CornerMixin,
VectorLikeMixin,
StickableMixin {
StickableMixin,
AspectRatioLockMixin {
readonly type: 'HIGHLIGHT'
clone(): HighlightNode
}
interface WashiTapeNode extends DefaultShapeMixin, StickableMixin {
interface WashiTapeNode extends DefaultShapeMixin, StickableMixin, AspectRatioLockMixin {
readonly type: 'WASHI_TAPE'
clone(): WashiTapeNode
}
Expand Down