fake-bpy-module 20240803__py3-none-any.whl → 20240805__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of fake-bpy-module might be problematic. Click here for more details.

Files changed (76) hide show
  1. _bpy_internal/extensions/__init__.pyi +1 -0
  2. _bpy_internal/extensions/stale_file_manager/__init__.pyi +39 -0
  3. _bpy_internal/extensions/wheel_manager/__init__.pyi +3 -1
  4. addon_utils/__init__.pyi +2 -0
  5. aud/__init__.pyi +77 -77
  6. bmesh/ops/__init__.pyi +54 -36
  7. bmesh/types/__init__.pyi +24 -24
  8. bpy/ops/action/__init__.pyi +55 -32
  9. bpy/ops/anim/__init__.pyi +22 -22
  10. bpy/ops/armature/__init__.pyi +47 -20
  11. bpy/ops/asset/__init__.pyi +5 -2
  12. bpy/ops/boid/__init__.pyi +12 -2
  13. bpy/ops/brush/__init__.pyi +18 -12
  14. bpy/ops/buttons/__init__.pyi +10 -4
  15. bpy/ops/cachefile/__init__.pyi +12 -6
  16. bpy/ops/clip/__init__.pyi +54 -38
  17. bpy/ops/console/__init__.pyi +17 -6
  18. bpy/ops/constraint/__init__.pyi +28 -28
  19. bpy/ops/curve/__init__.pyi +72 -34
  20. bpy/ops/curves/__init__.pyi +16 -16
  21. bpy/ops/dpaint/__init__.pyi +4 -4
  22. bpy/ops/ed/__init__.pyi +5 -2
  23. bpy/ops/export_anim/__init__.pyi +3 -2
  24. bpy/ops/export_scene/__init__.pyi +55 -45
  25. bpy/ops/file/__init__.pyi +40 -16
  26. bpy/ops/font/__init__.pyi +59 -16
  27. bpy/ops/geometry/__init__.pyi +55 -20
  28. bpy/ops/gpencil/__init__.pyi +155 -122
  29. bpy/ops/graph/__init__.pyi +131 -52
  30. bpy/ops/grease_pencil/__init__.pyi +78 -58
  31. bpy/ops/image/__init__.pyi +77 -54
  32. bpy/ops/import_anim/__init__.pyi +11 -8
  33. bpy/ops/import_scene/__init__.pyi +20 -18
  34. bpy/ops/info/__init__.pyi +4 -4
  35. bpy/ops/lattice/__init__.pyi +8 -8
  36. bpy/ops/marker/__init__.pyi +6 -6
  37. bpy/ops/mask/__init__.pyi +13 -12
  38. bpy/ops/mball/__init__.pyi +6 -6
  39. bpy/ops/mesh/__init__.pyi +290 -150
  40. bpy/ops/nla/__init__.pyi +28 -20
  41. bpy/ops/node/__init__.pyi +43 -32
  42. bpy/ops/object/__init__.pyi +651 -210
  43. bpy/ops/outliner/__init__.pyi +113 -32
  44. bpy/ops/paint/__init__.pyi +65 -56
  45. bpy/ops/palette/__init__.pyi +4 -4
  46. bpy/ops/particle/__init__.pyi +14 -14
  47. bpy/ops/pose/__init__.pyi +121 -44
  48. bpy/ops/preferences/__init__.pyi +9 -6
  49. bpy/ops/render/__init__.pyi +3 -2
  50. bpy/ops/rigidbody/__init__.pyi +45 -14
  51. bpy/ops/scene/__init__.pyi +69 -22
  52. bpy/ops/screen/__init__.pyi +78 -16
  53. bpy/ops/sculpt/__init__.pyi +131 -74
  54. bpy/ops/sculpt_curves/__init__.pyi +2 -2
  55. bpy/ops/sequencer/__init__.pyi +156 -60
  56. bpy/ops/sound/__init__.pyi +40 -16
  57. bpy/ops/surface/__init__.pyi +12 -12
  58. bpy/ops/text/__init__.pyi +65 -20
  59. bpy/ops/texture/__init__.pyi +2 -2
  60. bpy/ops/transform/__init__.pyi +344 -72
  61. bpy/ops/ui/__init__.pyi +9 -6
  62. bpy/ops/uilist/__init__.pyi +2 -2
  63. bpy/ops/uv/__init__.pyi +90 -66
  64. bpy/ops/view3d/__init__.pyi +36 -30
  65. bpy/ops/wm/__init__.pyi +443 -156
  66. bpy/types/__init__.pyi +28584 -2857
  67. {fake_bpy_module-20240803.dist-info → fake_bpy_module-20240805.dist-info}/METADATA +1 -1
  68. {fake_bpy_module-20240803.dist-info → fake_bpy_module-20240805.dist-info}/RECORD +76 -75
  69. freestyle/chainingiterators/__init__.pyi +4 -4
  70. freestyle/types/__init__.pyi +76 -63
  71. idprop/types/__init__.pyi +2 -2
  72. imbuf/types/__init__.pyi +2 -2
  73. mathutils/__init__.pyi +1004 -970
  74. mathutils/bvhtree/__init__.pyi +2 -2
  75. {fake_bpy_module-20240803.dist-info → fake_bpy_module-20240805.dist-info}/WHEEL +0 -0
  76. {fake_bpy_module-20240803.dist-info → fake_bpy_module-20240805.dist-info}/top_level.txt +0 -0
@@ -14,7 +14,7 @@ def brush_stroke(
14
14
  *,
15
15
  stroke: bpy.types.bpy_prop_collection[bpy.types.OperatorStrokeElement]
16
16
  | None = None,
17
- mode: str | None = "NORMAL",
17
+ mode: typing.Literal["NORMAL", "INVERT", "SMOOTH", "ERASE"] | None = "NORMAL",
18
18
  ignore_background_click: bool | None = False,
19
19
  ):
20
20
  """Sculpt a stroke into the geometry
@@ -37,7 +37,7 @@ def brush_stroke(
37
37
 
38
38
  ERASE
39
39
  Erase -- Switch brush to erase mode for duration of stroke.
40
- :type mode: str | None
40
+ :type mode: typing.Literal['NORMAL','INVERT','SMOOTH','ERASE'] | None
41
41
  :param ignore_background_click: Ignore Background Click, Clicks on the background do not start the stroke
42
42
  :type ignore_background_click: bool | None
43
43
  """
@@ -55,9 +55,10 @@ def cloth_filter(
55
55
  iteration_count: int | None = 1,
56
56
  event_history: bpy.types.bpy_prop_collection[bpy.types.OperatorStrokeElement]
57
57
  | None = None,
58
- type: str | None = "GRAVITY",
59
- force_axis: set[str] | None = {"X", "Y", "Z"},
60
- orientation: str | None = "LOCAL",
58
+ type: typing.Literal["GRAVITY", "INFLATE", "EXPAND", "PINCH", "SCALE"]
59
+ | None = "GRAVITY",
60
+ force_axis: set[typing.Literal["X", "Y", "Z"]] | None = {"X", "Y", "Z"},
61
+ orientation: typing.Literal["LOCAL", "WORLD", "VIEW"] | None = "LOCAL",
61
62
  cloth_mass: float | None = 1.0,
62
63
  cloth_damping: float | None = 0.0,
63
64
  use_face_sets: bool | None = False,
@@ -93,7 +94,7 @@ def cloth_filter(
93
94
 
94
95
  SCALE
95
96
  Scale -- Scales the mesh as a soft body using the origin of the object as scale.
96
- :type type: str | None
97
+ :type type: typing.Literal['GRAVITY','INFLATE','EXPAND','PINCH','SCALE'] | None
97
98
  :param force_axis: Force Axis, Apply the force in the selected axis
98
99
 
99
100
  X
@@ -104,7 +105,7 @@ def cloth_filter(
104
105
 
105
106
  Z
106
107
  Z -- Apply force in the Z axis.
107
- :type force_axis: set[str] | None
108
+ :type force_axis: set[typing.Literal['X','Y','Z']] | None
108
109
  :param orientation: Orientation, Orientation of the axis to limit the filter force
109
110
 
110
111
  LOCAL
@@ -115,7 +116,7 @@ def cloth_filter(
115
116
 
116
117
  VIEW
117
118
  View -- Use the view axis to limit the force and set the gravity direction.
118
- :type orientation: str | None
119
+ :type orientation: typing.Literal['LOCAL','WORLD','VIEW'] | None
119
120
  :param cloth_mass: Cloth Mass, Mass of each simulation particle
120
121
  :type cloth_mass: float | None
121
122
  :param cloth_damping: Cloth Damping, How much the applied forces are propagated through the cloth
@@ -139,7 +140,19 @@ def color_filter(
139
140
  iteration_count: int | None = 1,
140
141
  event_history: bpy.types.bpy_prop_collection[bpy.types.OperatorStrokeElement]
141
142
  | None = None,
142
- type: str | None = "FILL",
143
+ type: typing.Literal[
144
+ "FILL",
145
+ "HUE",
146
+ "SATURATION",
147
+ "VALUE",
148
+ "BRIGHTNESS",
149
+ "CONTRAST",
150
+ "SMOOTH",
151
+ "RED",
152
+ "GREEN",
153
+ "BLUE",
154
+ ]
155
+ | None = "FILL",
143
156
  fill_color: collections.abc.Sequence[float] | mathutils.Color | None = (
144
157
  1.0,
145
158
  1.0,
@@ -191,7 +204,7 @@ def color_filter(
191
204
 
192
205
  BLUE
193
206
  Blue -- Change blue channel.
194
- :type type: str | None
207
+ :type type: typing.Literal['FILL','HUE','SATURATION','VALUE','BRIGHTNESS','CONTRAST','SMOOTH','RED','GREEN','BLUE'] | None
195
208
  :param fill_color: Fill Color
196
209
  :type fill_color: collections.abc.Sequence[float] | mathutils.Color | None
197
210
  """
@@ -245,8 +258,18 @@ def expand(
245
258
  execution_context: int | str | None = None,
246
259
  undo: bool | None = None,
247
260
  *,
248
- target: str | None = "MASK",
249
- falloff_type: str | None = "GEODESIC",
261
+ target: typing.Literal["MASK", "FACE_SETS", "COLOR"] | None = "MASK",
262
+ falloff_type: typing.Literal[
263
+ "GEODESIC",
264
+ "TOPOLOGY",
265
+ "TOPOLOGY_DIAGONALS",
266
+ "NORMALS",
267
+ "SPHERICAL",
268
+ "BOUNDARY_TOPOLOGY",
269
+ "BOUNDARY_FACE_SET",
270
+ "ACTIVE_FACE_SET",
271
+ ]
272
+ | None = "GEODESIC",
250
273
  invert: bool | None = False,
251
274
  use_mask_preserve: bool | None = False,
252
275
  use_falloff_gradient: bool | None = False,
@@ -262,9 +285,9 @@ def expand(
262
285
  :type execution_context: int | str | None
263
286
  :type undo: bool | None
264
287
  :param target: Data Target, Data that is going to be modified in the expand operation
265
- :type target: str | None
288
+ :type target: typing.Literal['MASK','FACE_SETS','COLOR'] | None
266
289
  :param falloff_type: Falloff Type, Initial falloff of the expand operation
267
- :type falloff_type: str | None
290
+ :type falloff_type: typing.Literal['GEODESIC','TOPOLOGY','TOPOLOGY_DIAGONALS','NORMALS','SPHERICAL','BOUNDARY_TOPOLOGY','BOUNDARY_FACE_SET','ACTIVE_FACE_SET'] | None
268
291
  :param invert: Invert, Invert the expand active elements
269
292
  :type invert: bool | None
270
293
  :param use_mask_preserve: Preserve Previous, Preserve the previous state of the target data
@@ -323,7 +346,7 @@ def face_set_change_visibility(
323
346
  execution_context: int | str | None = None,
324
347
  undo: bool | None = None,
325
348
  *,
326
- mode: str | None = "TOGGLE",
349
+ mode: typing.Literal["TOGGLE", "SHOW_ACTIVE", "HIDE_ACTIVE"] | None = "TOGGLE",
327
350
  ):
328
351
  """Change the visibility of the Face Sets of the sculpt
329
352
 
@@ -340,7 +363,7 @@ def face_set_change_visibility(
340
363
 
341
364
  HIDE_ACTIVE
342
365
  Hide Active Face Sets -- Hide Active Face Sets.
343
- :type mode: str | None
366
+ :type mode: typing.Literal['TOGGLE','SHOW_ACTIVE','HIDE_ACTIVE'] | None
344
367
  """
345
368
 
346
369
  ...
@@ -351,7 +374,10 @@ def face_set_edit(
351
374
  undo: bool | None = None,
352
375
  *,
353
376
  active_face_set: int | None = 1,
354
- mode: str | None = "GROW",
377
+ mode: typing.Literal[
378
+ "GROW", "SHRINK", "DELETE_GEOMETRY", "FAIR_POSITIONS", "FAIR_TANGENCY"
379
+ ]
380
+ | None = "GROW",
355
381
  strength: float | None = 1.0,
356
382
  modify_hidden: bool | None = False,
357
383
  ):
@@ -378,7 +404,7 @@ def face_set_edit(
378
404
 
379
405
  FAIR_TANGENCY
380
406
  Fair Tangency -- Creates a smooth as possible geometry patch from the Face Set minimizing changes in vertex tangents.
381
- :type mode: str | None
407
+ :type mode: typing.Literal['GROW','SHRINK','DELETE_GEOMETRY','FAIR_POSITIONS','FAIR_TANGENCY'] | None
382
408
  :param strength: Strength
383
409
  :type strength: float | None
384
410
  :param modify_hidden: Modify Hidden, Apply the edit operation to hidden geometry
@@ -482,7 +508,7 @@ def face_sets_create(
482
508
  execution_context: int | str | None = None,
483
509
  undo: bool | None = None,
484
510
  *,
485
- mode: str | None = "MASKED",
511
+ mode: typing.Literal["MASKED", "VISIBLE", "ALL", "SELECTION"] | None = "MASKED",
486
512
  ):
487
513
  """Create a new Face Set
488
514
 
@@ -502,7 +528,7 @@ def face_sets_create(
502
528
 
503
529
  SELECTION
504
530
  Face Set from Edit Mode Selection -- Create an Face Set corresponding to the Edit Mode face selection.
505
- :type mode: str | None
531
+ :type mode: typing.Literal['MASKED','VISIBLE','ALL','SELECTION'] | None
506
532
  """
507
533
 
508
534
  ...
@@ -512,7 +538,17 @@ def face_sets_init(
512
538
  execution_context: int | str | None = None,
513
539
  undo: bool | None = None,
514
540
  *,
515
- mode: str | None = "LOOSE_PARTS",
541
+ mode: typing.Literal[
542
+ "LOOSE_PARTS",
543
+ "MATERIALS",
544
+ "NORMALS",
545
+ "UV_SEAMS",
546
+ "CREASES",
547
+ "BEVEL_WEIGHT",
548
+ "SHARP_EDGES",
549
+ "FACE_SET_BOUNDARIES",
550
+ ]
551
+ | None = "LOOSE_PARTS",
516
552
  threshold: float | None = 0.5,
517
553
  ):
518
554
  """Initializes all Face Sets in the mesh
@@ -545,7 +581,7 @@ def face_sets_init(
545
581
 
546
582
  FACE_SET_BOUNDARIES
547
583
  Face Sets from Face Set Boundaries -- Create a Face Set per isolated Face Set.
548
- :type mode: str | None
584
+ :type mode: typing.Literal['LOOSE_PARTS','MATERIALS','NORMALS','UV_SEAMS','CREASES','BEVEL_WEIGHT','SHARP_EDGES','FACE_SET_BOUNDARIES'] | None
549
585
  :param threshold: Threshold, Minimum value to consider a certain attribute a boundary when creating the Face Sets
550
586
  :type threshold: float | None
551
587
  """
@@ -598,7 +634,10 @@ def mask_filter(
598
634
  execution_context: int | str | None = None,
599
635
  undo: bool | None = None,
600
636
  *,
601
- filter_type: str | None = "SMOOTH",
637
+ filter_type: typing.Literal[
638
+ "SMOOTH", "SHARPEN", "GROW", "SHRINK", "CONTRAST_INCREASE", "CONTRAST_DECREASE"
639
+ ]
640
+ | None = "SMOOTH",
602
641
  iterations: int | None = 1,
603
642
  auto_iteration_count: bool | None = True,
604
643
  ):
@@ -608,7 +647,7 @@ def mask_filter(
608
647
  :type execution_context: int | str | None
609
648
  :type undo: bool | None
610
649
  :param filter_type: Type, Filter that is going to be applied to the mask
611
- :type filter_type: str | None
650
+ :type filter_type: typing.Literal['SMOOTH','SHARPEN','GROW','SHRINK','CONTRAST_INCREASE','CONTRAST_DECREASE'] | None
612
651
  :param iterations: Iterations, Number of times that the filter is going to be applied
613
652
  :type iterations: int | None
614
653
  :param auto_iteration_count: Auto Iteration Count, Use an automatic number of iterations based on the number of vertices of the sculpt
@@ -622,9 +661,10 @@ def mask_from_cavity(
622
661
  execution_context: int | str | None = None,
623
662
  undo: bool | None = None,
624
663
  *,
625
- mix_mode: str | None = "MIX",
664
+ mix_mode: typing.Literal["MIX", "MULTIPLY", "DIVIDE", "ADD", "SUBTRACT"]
665
+ | None = "MIX",
626
666
  mix_factor: float | None = 1.0,
627
- settings_source: str | None = "OPERATOR",
667
+ settings_source: typing.Literal["OPERATOR", "BRUSH", "SCENE"] | None = "OPERATOR",
628
668
  factor: float | None = 0.5,
629
669
  blur_steps: int | None = 2,
630
670
  use_curve: bool | None = False,
@@ -636,7 +676,7 @@ def mask_from_cavity(
636
676
  :type execution_context: int | str | None
637
677
  :type undo: bool | None
638
678
  :param mix_mode: Mode, Mix mode
639
- :type mix_mode: str | None
679
+ :type mix_mode: typing.Literal['MIX','MULTIPLY','DIVIDE','ADD','SUBTRACT'] | None
640
680
  :param mix_factor: Mix Factor
641
681
  :type mix_factor: float | None
642
682
  :param settings_source: Settings, Use settings from here
@@ -649,7 +689,7 @@ def mask_from_cavity(
649
689
 
650
690
  SCENE
651
691
  Scene -- Use settings from scene.
652
- :type settings_source: str | None
692
+ :type settings_source: typing.Literal['OPERATOR','BRUSH','SCENE'] | None
653
693
  :param factor: Factor, The contrast of the cavity mask
654
694
  :type factor: float | None
655
695
  :param blur_steps: Blur, The number of times the cavity mask is blurred
@@ -667,7 +707,10 @@ def mask_init(
667
707
  execution_context: int | str | None = None,
668
708
  undo: bool | None = None,
669
709
  *,
670
- mode: str | None = "RANDOM_PER_VERTEX",
710
+ mode: typing.Literal[
711
+ "RANDOM_PER_VERTEX", "RANDOM_PER_FACE_SET", "RANDOM_PER_LOOSE_PART"
712
+ ]
713
+ | None = "RANDOM_PER_VERTEX",
671
714
  ):
672
715
  """Creates a new mask for the entire mesh
673
716
 
@@ -675,7 +718,7 @@ def mask_init(
675
718
  :type execution_context: int | str | None
676
719
  :type undo: bool | None
677
720
  :param mode: Mode
678
- :type mode: str | None
721
+ :type mode: typing.Literal['RANDOM_PER_VERTEX','RANDOM_PER_FACE_SET','RANDOM_PER_LOOSE_PART'] | None
679
722
  """
680
723
 
681
724
  ...
@@ -691,9 +734,22 @@ def mesh_filter(
691
734
  iteration_count: int | None = 1,
692
735
  event_history: bpy.types.bpy_prop_collection[bpy.types.OperatorStrokeElement]
693
736
  | None = None,
694
- type: str | None = "INFLATE",
695
- deform_axis: set[str] | None = {"X", "Y", "Z"},
696
- orientation: str | None = "LOCAL",
737
+ type: typing.Literal[
738
+ "SMOOTH",
739
+ "SCALE",
740
+ "INFLATE",
741
+ "SPHERE",
742
+ "RANDOM",
743
+ "RELAX",
744
+ "RELAX_FACE_SETS",
745
+ "SURFACE_SMOOTH",
746
+ "SHARPEN",
747
+ "ENHANCE_DETAILS",
748
+ "ERASE_DISCPLACEMENT",
749
+ ]
750
+ | None = "INFLATE",
751
+ deform_axis: set[typing.Literal["X", "Y", "Z"]] | None = {"X", "Y", "Z"},
752
+ orientation: typing.Literal["LOCAL", "WORLD", "VIEW"] | None = "LOCAL",
697
753
  surface_smooth_shape_preservation: float | None = 0.5,
698
754
  surface_smooth_current_vertex: float | None = 0.5,
699
755
  sharpen_smooth_ratio: float | None = 0.35,
@@ -748,7 +804,7 @@ def mesh_filter(
748
804
 
749
805
  ERASE_DISCPLACEMENT
750
806
  Erase Displacement -- Deletes the displacement of the Multires Modifier.
751
- :type type: str | None
807
+ :type type: typing.Literal['SMOOTH','SCALE','INFLATE','SPHERE','RANDOM','RELAX','RELAX_FACE_SETS','SURFACE_SMOOTH','SHARPEN','ENHANCE_DETAILS','ERASE_DISCPLACEMENT'] | None
752
808
  :param deform_axis: Deform Axis, Apply the deformation in the selected axis
753
809
 
754
810
  X
@@ -759,7 +815,7 @@ def mesh_filter(
759
815
 
760
816
  Z
761
817
  Z -- Deform in the Z axis.
762
- :type deform_axis: set[str] | None
818
+ :type deform_axis: set[typing.Literal['X','Y','Z']] | None
763
819
  :param orientation: Orientation, Orientation of the axis to limit the filter displacement
764
820
 
765
821
  LOCAL
@@ -770,7 +826,7 @@ def mesh_filter(
770
826
 
771
827
  VIEW
772
828
  View -- Use the view axis to limit the displacement.
773
- :type orientation: str | None
829
+ :type orientation: typing.Literal['LOCAL','WORLD','VIEW'] | None
774
830
  :param surface_smooth_shape_preservation: Shape Preservation, How much of the original shape is preserved when smoothing
775
831
  :type surface_smooth_shape_preservation: float | None
776
832
  :param surface_smooth_current_vertex: Per Vertex Displacement, How much the position of each individual vertex influences the final result
@@ -858,7 +914,7 @@ def sample_detail_size(
858
914
  undo: bool | None = None,
859
915
  *,
860
916
  location: collections.abc.Iterable[int] | None = (0, 0),
861
- mode: str | None = "DYNTOPO",
917
+ mode: typing.Literal["DYNTOPO", "VOXEL"] | None = "DYNTOPO",
862
918
  ):
863
919
  """Sample the mesh detail on clicked point
864
920
 
@@ -874,7 +930,7 @@ def sample_detail_size(
874
930
 
875
931
  VOXEL
876
932
  Voxel -- Sample mesh voxel size.
877
- :type mode: str | None
933
+ :type mode: typing.Literal['DYNTOPO','VOXEL'] | None
878
934
  """
879
935
 
880
936
  ...
@@ -912,7 +968,8 @@ def set_pivot_position(
912
968
  execution_context: int | str | None = None,
913
969
  undo: bool | None = None,
914
970
  *,
915
- mode: str | None = "UNMASKED",
971
+ mode: typing.Literal["ORIGIN", "UNMASKED", "BORDER", "ACTIVE", "SURFACE"]
972
+ | None = "UNMASKED",
916
973
  mouse_x: float | None = 0.0,
917
974
  mouse_y: float | None = 0.0,
918
975
  ):
@@ -937,7 +994,7 @@ def set_pivot_position(
937
994
 
938
995
  SURFACE
939
996
  Surface -- Sets the pivot position to the surface under the cursor.
940
- :type mode: str | None
997
+ :type mode: typing.Literal['ORIGIN','UNMASKED','BORDER','ACTIVE','SURFACE'] | None
941
998
  :param mouse_x: Mouse Position X, Position of the mouse used for "Surface" mode
942
999
  :type mouse_x: float | None
943
1000
  :param mouse_y: Mouse Position Y, Position of the mouse used for "Surface" mode
@@ -976,11 +1033,11 @@ def trim_box_gesture(
976
1033
  wait_for_input: bool | None = True,
977
1034
  use_front_faces_only: bool | None = False,
978
1035
  location: collections.abc.Iterable[int] | None = (0, 0),
979
- trim_mode: str | None = "DIFFERENCE",
1036
+ trim_mode: typing.Literal["DIFFERENCE", "UNION", "JOIN"] | None = "DIFFERENCE",
980
1037
  use_cursor_depth: bool | None = False,
981
- trim_orientation: str | None = "VIEW",
982
- trim_extrude_mode: str | None = "FIXED",
983
- trim_solver: str | None = "FAST",
1038
+ trim_orientation: typing.Literal["VIEW", "SURFACE"] | None = "VIEW",
1039
+ trim_extrude_mode: typing.Literal["PROJECT", "FIXED"] | None = "FIXED",
1040
+ trim_solver: typing.Literal["EXACT", "FAST"] | None = "FAST",
984
1041
  ):
985
1042
  """Execute a boolean operation on the mesh and a rectangle defined by the cursor
986
1043
 
@@ -1011,7 +1068,7 @@ def trim_box_gesture(
1011
1068
 
1012
1069
  JOIN
1013
1070
  Join -- Join the new mesh as separate geometry, without performing any boolean operation.
1014
- :type trim_mode: str | None
1071
+ :type trim_mode: typing.Literal['DIFFERENCE','UNION','JOIN'] | None
1015
1072
  :param use_cursor_depth: Use Cursor for Depth, Use cursor location and radius for the dimensions and position of the trimming shape
1016
1073
  :type use_cursor_depth: bool | None
1017
1074
  :param trim_orientation: Shape Orientation
@@ -1021,7 +1078,7 @@ def trim_box_gesture(
1021
1078
 
1022
1079
  SURFACE
1023
1080
  Surface -- Use the surface normal to orientate the trimming shape.
1024
- :type trim_orientation: str | None
1081
+ :type trim_orientation: typing.Literal['VIEW','SURFACE'] | None
1025
1082
  :param trim_extrude_mode: Extrude Mode
1026
1083
 
1027
1084
  PROJECT
@@ -1029,7 +1086,7 @@ def trim_box_gesture(
1029
1086
 
1030
1087
  FIXED
1031
1088
  Fixed -- Align trim geometry orthogonally for a shape with 90 degree angles.
1032
- :type trim_extrude_mode: str | None
1089
+ :type trim_extrude_mode: typing.Literal['PROJECT','FIXED'] | None
1033
1090
  :param trim_solver: Solver
1034
1091
 
1035
1092
  EXACT
@@ -1037,7 +1094,7 @@ def trim_box_gesture(
1037
1094
 
1038
1095
  FAST
1039
1096
  Fast -- Use the fast float boolean solver.
1040
- :type trim_solver: str | None
1097
+ :type trim_solver: typing.Literal['EXACT','FAST'] | None
1041
1098
  """
1042
1099
 
1043
1100
  ...
@@ -1053,11 +1110,11 @@ def trim_lasso_gesture(
1053
1110
  smooth_stroke_radius: int | None = 35,
1054
1111
  use_front_faces_only: bool | None = False,
1055
1112
  location: collections.abc.Iterable[int] | None = (0, 0),
1056
- trim_mode: str | None = "DIFFERENCE",
1113
+ trim_mode: typing.Literal["DIFFERENCE", "UNION", "JOIN"] | None = "DIFFERENCE",
1057
1114
  use_cursor_depth: bool | None = False,
1058
- trim_orientation: str | None = "VIEW",
1059
- trim_extrude_mode: str | None = "FIXED",
1060
- trim_solver: str | None = "FAST",
1115
+ trim_orientation: typing.Literal["VIEW", "SURFACE"] | None = "VIEW",
1116
+ trim_extrude_mode: typing.Literal["PROJECT", "FIXED"] | None = "FIXED",
1117
+ trim_solver: typing.Literal["EXACT", "FAST"] | None = "FAST",
1061
1118
  ):
1062
1119
  """Execute a boolean operation on the mesh and a shape defined by the cursor
1063
1120
 
@@ -1086,7 +1143,7 @@ def trim_lasso_gesture(
1086
1143
 
1087
1144
  JOIN
1088
1145
  Join -- Join the new mesh as separate geometry, without performing any boolean operation.
1089
- :type trim_mode: str | None
1146
+ :type trim_mode: typing.Literal['DIFFERENCE','UNION','JOIN'] | None
1090
1147
  :param use_cursor_depth: Use Cursor for Depth, Use cursor location and radius for the dimensions and position of the trimming shape
1091
1148
  :type use_cursor_depth: bool | None
1092
1149
  :param trim_orientation: Shape Orientation
@@ -1096,7 +1153,7 @@ def trim_lasso_gesture(
1096
1153
 
1097
1154
  SURFACE
1098
1155
  Surface -- Use the surface normal to orientate the trimming shape.
1099
- :type trim_orientation: str | None
1156
+ :type trim_orientation: typing.Literal['VIEW','SURFACE'] | None
1100
1157
  :param trim_extrude_mode: Extrude Mode
1101
1158
 
1102
1159
  PROJECT
@@ -1104,7 +1161,7 @@ def trim_lasso_gesture(
1104
1161
 
1105
1162
  FIXED
1106
1163
  Fixed -- Align trim geometry orthogonally for a shape with 90 degree angles.
1107
- :type trim_extrude_mode: str | None
1164
+ :type trim_extrude_mode: typing.Literal['PROJECT','FIXED'] | None
1108
1165
  :param trim_solver: Solver
1109
1166
 
1110
1167
  EXACT
@@ -1112,7 +1169,7 @@ def trim_lasso_gesture(
1112
1169
 
1113
1170
  FAST
1114
1171
  Fast -- Use the fast float boolean solver.
1115
- :type trim_solver: str | None
1172
+ :type trim_solver: typing.Literal['EXACT','FAST'] | None
1116
1173
  """
1117
1174
 
1118
1175
  ...
@@ -1131,11 +1188,11 @@ def trim_line_gesture(
1131
1188
  use_front_faces_only: bool | None = False,
1132
1189
  use_limit_to_segment: bool | None = False,
1133
1190
  location: collections.abc.Iterable[int] | None = (0, 0),
1134
- trim_mode: str | None = "DIFFERENCE",
1191
+ trim_mode: typing.Literal["DIFFERENCE", "UNION", "JOIN"] | None = "DIFFERENCE",
1135
1192
  use_cursor_depth: bool | None = False,
1136
- trim_orientation: str | None = "VIEW",
1137
- trim_extrude_mode: str | None = "FIXED",
1138
- trim_solver: str | None = "FAST",
1193
+ trim_orientation: typing.Literal["VIEW", "SURFACE"] | None = "VIEW",
1194
+ trim_extrude_mode: typing.Literal["PROJECT", "FIXED"] | None = "FIXED",
1195
+ trim_solver: typing.Literal["EXACT", "FAST"] | None = "FAST",
1139
1196
  ):
1140
1197
  """Remove a portion of the mesh on one side of a line
1141
1198
 
@@ -1170,7 +1227,7 @@ def trim_line_gesture(
1170
1227
 
1171
1228
  JOIN
1172
1229
  Join -- Join the new mesh as separate geometry, without performing any boolean operation.
1173
- :type trim_mode: str | None
1230
+ :type trim_mode: typing.Literal['DIFFERENCE','UNION','JOIN'] | None
1174
1231
  :param use_cursor_depth: Use Cursor for Depth, Use cursor location and radius for the dimensions and position of the trimming shape
1175
1232
  :type use_cursor_depth: bool | None
1176
1233
  :param trim_orientation: Shape Orientation
@@ -1180,7 +1237,7 @@ def trim_line_gesture(
1180
1237
 
1181
1238
  SURFACE
1182
1239
  Surface -- Use the surface normal to orientate the trimming shape.
1183
- :type trim_orientation: str | None
1240
+ :type trim_orientation: typing.Literal['VIEW','SURFACE'] | None
1184
1241
  :param trim_extrude_mode: Extrude Mode
1185
1242
 
1186
1243
  PROJECT
@@ -1188,7 +1245,7 @@ def trim_line_gesture(
1188
1245
 
1189
1246
  FIXED
1190
1247
  Fixed -- Align trim geometry orthogonally for a shape with 90 degree angles.
1191
- :type trim_extrude_mode: str | None
1248
+ :type trim_extrude_mode: typing.Literal['PROJECT','FIXED'] | None
1192
1249
  :param trim_solver: Solver
1193
1250
 
1194
1251
  EXACT
@@ -1196,7 +1253,7 @@ def trim_line_gesture(
1196
1253
 
1197
1254
  FAST
1198
1255
  Fast -- Use the fast float boolean solver.
1199
- :type trim_solver: str | None
1256
+ :type trim_solver: typing.Literal['EXACT','FAST'] | None
1200
1257
  """
1201
1258
 
1202
1259
  ...
@@ -1209,11 +1266,11 @@ def trim_polyline_gesture(
1209
1266
  path: bpy.types.bpy_prop_collection[bpy.types.OperatorMousePath] | None = None,
1210
1267
  use_front_faces_only: bool | None = False,
1211
1268
  location: collections.abc.Iterable[int] | None = (0, 0),
1212
- trim_mode: str | None = "DIFFERENCE",
1269
+ trim_mode: typing.Literal["DIFFERENCE", "UNION", "JOIN"] | None = "DIFFERENCE",
1213
1270
  use_cursor_depth: bool | None = False,
1214
- trim_orientation: str | None = "VIEW",
1215
- trim_extrude_mode: str | None = "FIXED",
1216
- trim_solver: str | None = "FAST",
1271
+ trim_orientation: typing.Literal["VIEW", "SURFACE"] | None = "VIEW",
1272
+ trim_extrude_mode: typing.Literal["PROJECT", "FIXED"] | None = "FIXED",
1273
+ trim_solver: typing.Literal["EXACT", "FAST"] | None = "FAST",
1217
1274
  ):
1218
1275
  """Execute a boolean operation on the mesh and a polygonal shape defined by the cursor
1219
1276
 
@@ -1236,7 +1293,7 @@ def trim_polyline_gesture(
1236
1293
 
1237
1294
  JOIN
1238
1295
  Join -- Join the new mesh as separate geometry, without performing any boolean operation.
1239
- :type trim_mode: str | None
1296
+ :type trim_mode: typing.Literal['DIFFERENCE','UNION','JOIN'] | None
1240
1297
  :param use_cursor_depth: Use Cursor for Depth, Use cursor location and radius for the dimensions and position of the trimming shape
1241
1298
  :type use_cursor_depth: bool | None
1242
1299
  :param trim_orientation: Shape Orientation
@@ -1246,7 +1303,7 @@ def trim_polyline_gesture(
1246
1303
 
1247
1304
  SURFACE
1248
1305
  Surface -- Use the surface normal to orientate the trimming shape.
1249
- :type trim_orientation: str | None
1306
+ :type trim_orientation: typing.Literal['VIEW','SURFACE'] | None
1250
1307
  :param trim_extrude_mode: Extrude Mode
1251
1308
 
1252
1309
  PROJECT
@@ -1254,7 +1311,7 @@ def trim_polyline_gesture(
1254
1311
 
1255
1312
  FIXED
1256
1313
  Fixed -- Align trim geometry orthogonally for a shape with 90 degree angles.
1257
- :type trim_extrude_mode: str | None
1314
+ :type trim_extrude_mode: typing.Literal['PROJECT','FIXED'] | None
1258
1315
  :param trim_solver: Solver
1259
1316
 
1260
1317
  EXACT
@@ -1262,7 +1319,7 @@ def trim_polyline_gesture(
1262
1319
 
1263
1320
  FAST
1264
1321
  Fast -- Use the fast float boolean solver.
1265
- :type trim_solver: str | None
1322
+ :type trim_solver: typing.Literal['EXACT','FAST'] | None
1266
1323
  """
1267
1324
 
1268
1325
  ...
@@ -1309,7 +1366,7 @@ def uv_sculpt_relax(
1309
1366
  undo: bool | None = None,
1310
1367
  *,
1311
1368
  use_invert: bool | None = False,
1312
- relax_method: str | None = "COTAN",
1369
+ relax_method: typing.Literal["LAPLACIAN", "HC", "COTAN"] | None = "COTAN",
1313
1370
  ):
1314
1371
  """Relax UVs
1315
1372
 
@@ -1328,7 +1385,7 @@ def uv_sculpt_relax(
1328
1385
 
1329
1386
  COTAN
1330
1387
  Geometry -- Use Geometry (cotangent) relaxation, making UVs follow the underlying 3D geometry.
1331
- :type relax_method: str | None
1388
+ :type relax_method: typing.Literal['LAPLACIAN','HC','COTAN'] | None
1332
1389
  """
1333
1390
 
1334
1391
  ...
@@ -13,7 +13,7 @@ def brush_stroke(
13
13
  *,
14
14
  stroke: bpy.types.bpy_prop_collection[bpy.types.OperatorStrokeElement]
15
15
  | None = None,
16
- mode: str | None = "NORMAL",
16
+ mode: typing.Literal["NORMAL", "INVERT", "SMOOTH", "ERASE"] | None = "NORMAL",
17
17
  ):
18
18
  """Sculpt curves using a brush
19
19
 
@@ -35,7 +35,7 @@ def brush_stroke(
35
35
 
36
36
  ERASE
37
37
  Erase -- Switch brush to erase mode for duration of stroke.
38
- :type mode: str | None
38
+ :type mode: typing.Literal['NORMAL','INVERT','SMOOTH','ERASE'] | None
39
39
  """
40
40
 
41
41
  ...