openxiangda-contracts 2.34.0 → 2.43.0

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.
Files changed (68) hide show
  1. package/dist/browser.d.ts +8 -0
  2. package/dist/browser.d.ts.map +1 -1
  3. package/dist/browser.js +8 -0
  4. package/dist/browser.js.map +1 -1
  5. package/dist/index.d.ts +9 -0
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +9 -0
  8. package/dist/index.js.map +1 -1
  9. package/dist/native-compiler/compiler.d.ts +1 -1
  10. package/dist/native-compiler/compiler.d.ts.map +1 -1
  11. package/dist/native-compiler/compiler.js +99 -5
  12. package/dist/native-compiler/compiler.js.map +1 -1
  13. package/dist/native-compiler/index.cjs +6 -5
  14. package/dist/native-compiler/index.d.ts +10 -0
  15. package/dist/native-compiler/index.d.ts.map +1 -1
  16. package/dist/native-compiler/index.js +6 -5
  17. package/dist/native-compiler/role-membership-batch.d.ts +73 -0
  18. package/dist/native-compiler/role-membership-batch.d.ts.map +1 -0
  19. package/dist/native-compiler/role-membership-batch.js +91 -0
  20. package/dist/native-compiler/role-membership-batch.js.map +1 -0
  21. package/dist/native-compiler/workflow-assignment-routing.d.ts +121 -0
  22. package/dist/native-compiler/workflow-assignment-routing.d.ts.map +1 -0
  23. package/dist/native-compiler/workflow-assignment-routing.js +113 -0
  24. package/dist/native-compiler/workflow-assignment-routing.js.map +1 -0
  25. package/dist/native-compiler/workflow-automatic-cc.d.ts +20 -0
  26. package/dist/native-compiler/workflow-automatic-cc.d.ts.map +1 -0
  27. package/dist/native-compiler/workflow-automatic-cc.js +36 -0
  28. package/dist/native-compiler/workflow-automatic-cc.js.map +1 -0
  29. package/dist/native-compiler/workflow-business-step-identity.d.ts +12 -0
  30. package/dist/native-compiler/workflow-business-step-identity.d.ts.map +1 -0
  31. package/dist/native-compiler/workflow-business-step-identity.js +11 -0
  32. package/dist/native-compiler/workflow-business-step-identity.js.map +1 -0
  33. package/dist/native-compiler/workflow-business-step.d.ts +119 -0
  34. package/dist/native-compiler/workflow-business-step.d.ts.map +1 -0
  35. package/dist/native-compiler/workflow-business-step.js +357 -0
  36. package/dist/native-compiler/workflow-business-step.js.map +1 -0
  37. package/dist/native-compiler/workflow-delegation-administration.d.ts +1084 -0
  38. package/dist/native-compiler/workflow-delegation-administration.d.ts.map +1 -0
  39. package/dist/native-compiler/workflow-delegation-administration.js +68 -0
  40. package/dist/native-compiler/workflow-delegation-administration.js.map +1 -0
  41. package/dist/native-compiler/workflow-graph.d.ts +182 -0
  42. package/dist/native-compiler/workflow-graph.d.ts.map +1 -0
  43. package/dist/native-compiler/workflow-graph.js +201 -0
  44. package/dist/native-compiler/workflow-graph.js.map +1 -0
  45. package/dist/native-compiler/workflow-node-administration.d.ts +46 -0
  46. package/dist/native-compiler/workflow-node-administration.d.ts.map +1 -0
  47. package/dist/native-compiler/workflow-node-administration.js +105 -0
  48. package/dist/native-compiler/workflow-node-administration.js.map +1 -0
  49. package/dist/native-compiler/workflow-task-page.d.ts +119 -0
  50. package/dist/native-compiler/workflow-task-page.d.ts.map +1 -0
  51. package/dist/native-compiler/workflow-task-page.js +225 -0
  52. package/dist/native-compiler/workflow-task-page.js.map +1 -0
  53. package/dist/native-version.d.ts +10 -0
  54. package/dist/native-version.d.ts.map +1 -1
  55. package/dist/native-version.js +10 -0
  56. package/dist/native-version.js.map +1 -1
  57. package/dist/native.d.ts +2 -0
  58. package/dist/native.d.ts.map +1 -1
  59. package/dist/native.js.map +1 -1
  60. package/dist/schemas.d.ts +4745 -1006
  61. package/dist/schemas.d.ts.map +1 -1
  62. package/dist/schemas.js +217 -0
  63. package/dist/schemas.js.map +1 -1
  64. package/dist/types.d.ts +218 -3
  65. package/dist/types.d.ts.map +1 -1
  66. package/dist/types.js +13 -0
  67. package/dist/types.js.map +1 -1
  68. package/package.json +1 -1
package/dist/types.d.ts CHANGED
@@ -5,6 +5,7 @@ import type { CascadePathValue, DataFieldOption, DateRangeValue, DepartmentRefer
5
5
  import type { DataFieldResourceSource } from "./references.js";
6
6
  import type { WorkflowBusinessData } from "./workflow-summary.js";
7
7
  import type { WorkflowBusinessDetail } from "./workflow-detail.js";
8
+ import type { WorkflowBusinessStepNode, WorkflowBusinessStepResult } from './native-compiler/workflow-business-step.js';
8
9
  import type { AppWorkflowLaunchContextDeclaration, AppWorkflowLaunchInputBindingDeclaration, AppWorkflowNamedOperationOutputDeclaration } from "./native.js";
9
10
  import { type CliProtocolCapabilities } from "./cli.js";
10
11
  export declare const OPENXIANGDA_CONTRACT_VERSION: "2.0.0-alpha.5";
@@ -24,6 +25,10 @@ export declare const SCHEMA_VERSIONS: {
24
25
  readonly roleSubjectPage: "openxiangda.role-subject-page/v2";
25
26
  readonly runtimeAuthorization: "openxiangda.runtime-authorization/v2";
26
27
  readonly nativeRoleMembershipPage: "openxiangda.native-role-membership-page/v2";
28
+ readonly nativeRoleMembershipBatchRequest: "openxiangda.native-role-membership-batch-request/v2";
29
+ readonly nativeRoleMembershipBatchResult: "openxiangda.native-role-membership-batch-result/v2";
30
+ readonly workflowRoleReferencePage: "openxiangda.workflow-role-reference-page/v2";
31
+ readonly nativeRoleManagementScopeValuePage: "openxiangda.native-role-management-scope-value-page/v2";
27
32
  readonly nativeAuthorizationManagementCatalog: "openxiangda.native-authorization-catalog/v2";
28
33
  readonly nativeRoleManagementGrantPage: "openxiangda.native-role-management-grant-page/v2";
29
34
  readonly nativeAuthorizationMutationReceipt: "openxiangda.native-authorization-mutation-receipt/v2";
@@ -93,6 +98,10 @@ export declare const SCHEMA_VERSIONS: {
93
98
  readonly workflowCommandInput: "openxiangda.workflow-command-input/v2";
94
99
  readonly workflowLaunchSurface: "openxiangda.workflow-launch-surface/v3";
95
100
  readonly workflowDelegation: "openxiangda.workflow-delegation/v2";
101
+ readonly workflowDelegationAdministration: "openxiangda.workflow-delegation-administration/v2";
102
+ readonly workflowDelegationMutationRequest: "openxiangda.workflow-delegation-mutation/v2";
103
+ readonly workflowDelegationMutationPreview: "openxiangda.workflow-delegation-preview/v2";
104
+ readonly workflowDelegationMutationReceipt: "openxiangda.workflow-delegation-receipt/v2";
96
105
  readonly workflowAssigneeProvider: "openxiangda.workflow-assignee-provider/v2";
97
106
  readonly workflowAssigneeRequest: "openxiangda.workflow-assignee-request/v2.1";
98
107
  readonly workflowAssigneeResponse: "openxiangda.workflow-assignee-response/v2";
@@ -439,6 +448,23 @@ export interface NativeAuthorizationManagementCatalog {
439
448
  roleManagement: NativeRoleManagementAuthority;
440
449
  scopeDimensions: NativeAuthorizationManagementScopeDimension[];
441
450
  }
451
+ export interface NativeRoleManagementScopeValuePage {
452
+ schemaVersion: typeof SCHEMA_VERSIONS.nativeRoleManagementScopeValuePage;
453
+ environment: {
454
+ id: string;
455
+ key: DeploymentEnvironment;
456
+ headRevision: number;
457
+ authzRevisionId: string;
458
+ scopeDataVersion: string;
459
+ };
460
+ dimensionCode: string;
461
+ items: Array<{
462
+ id: string;
463
+ label: string;
464
+ }>;
465
+ limit: number;
466
+ offset: number;
467
+ }
442
468
  export interface NativeRoleMembership {
443
469
  id: string;
444
470
  environmentId: string;
@@ -1515,7 +1541,7 @@ export interface CloudEvent<TData extends Record<string, unknown> = Record<strin
1515
1541
  }
1516
1542
  export declare const DATA_EVENT_TYPES_V2: readonly ["openxiangda.data.record.created.v2", "openxiangda.data.record.updated.v2", "openxiangda.data.record.deleted.v2"];
1517
1543
  export type DataEventTypeV2 = (typeof DATA_EVENT_TYPES_V2)[number];
1518
- export declare const WORKFLOW_EVENT_TYPES_V2: readonly ["openxiangda.workflow.instance.started.v2", "openxiangda.workflow.instance.completed.v2", "openxiangda.workflow.instance.rejected.v2", "openxiangda.workflow.instance.returned.v2", "openxiangda.workflow.instance.resumed.v2", "openxiangda.workflow.instance.withdrawn.v2", "openxiangda.workflow.instance.terminated.v2", "openxiangda.workflow.instance.cc_added.v2", "openxiangda.workflow.task.created.v2", "openxiangda.workflow.task.assigned.v2", "openxiangda.workflow.task.assignment_pending.v2", "openxiangda.workflow.task.assignment_resolution_failed.v2", "openxiangda.workflow.task.approved.v2", "openxiangda.workflow.task.completed.v2", "openxiangda.workflow.task.rejected.v2", "openxiangda.workflow.task.returned.v2", "openxiangda.workflow.task.resubmitted.v2", "openxiangda.workflow.task.transferred.v2", "openxiangda.workflow.task.reassigned.v2", "openxiangda.workflow.task.delegated.v2", "openxiangda.workflow.task.assignee_added.v2", "openxiangda.workflow.task.cancelled.v2", "openxiangda.workflow.participant.activated.v2", "openxiangda.workflow.participant.completed.v2", "openxiangda.workflow.participant.rejected.v2", "openxiangda.workflow.participant.returned.v2", "openxiangda.workflow.participant.transferred.v2", "openxiangda.workflow.participant.reassigned.v2", "openxiangda.workflow.participant.delegated.v2", "openxiangda.workflow.participant.added.v2", "openxiangda.workflow.participant.suspended.v2", "openxiangda.workflow.participant.resumed.v2", "openxiangda.workflow.participant.cancelled.v2"];
1544
+ export declare const WORKFLOW_EVENT_TYPES_V2: readonly ["openxiangda.workflow.step.requested.v2", "openxiangda.workflow.step.result_received.v2", "openxiangda.workflow.step.completed.v2", "openxiangda.workflow.step.continuation_failed.v2", "openxiangda.workflow.instance.started.v2", "openxiangda.workflow.instance.completed.v2", "openxiangda.workflow.instance.rejected.v2", "openxiangda.workflow.instance.returned.v2", "openxiangda.workflow.instance.resumed.v2", "openxiangda.workflow.instance.withdrawn.v2", "openxiangda.workflow.instance.terminated.v2", "openxiangda.workflow.instance.cc_added.v2", "openxiangda.workflow.task.created.v2", "openxiangda.workflow.task.assigned.v2", "openxiangda.workflow.task.assignment_pending.v2", "openxiangda.workflow.task.assignment_resolution_failed.v2", "openxiangda.workflow.task.approved.v2", "openxiangda.workflow.task.completed.v2", "openxiangda.workflow.task.rejected.v2", "openxiangda.workflow.task.returned.v2", "openxiangda.workflow.task.resubmitted.v2", "openxiangda.workflow.task.transferred.v2", "openxiangda.workflow.task.reassigned.v2", "openxiangda.workflow.task.delegated.v2", "openxiangda.workflow.task.assignee_added.v2", "openxiangda.workflow.task.cancelled.v2", "openxiangda.workflow.participant.activated.v2", "openxiangda.workflow.participant.completed.v2", "openxiangda.workflow.participant.rejected.v2", "openxiangda.workflow.participant.returned.v2", "openxiangda.workflow.participant.transferred.v2", "openxiangda.workflow.participant.reassigned.v2", "openxiangda.workflow.participant.delegated.v2", "openxiangda.workflow.participant.added.v2", "openxiangda.workflow.participant.suspended.v2", "openxiangda.workflow.participant.resumed.v2", "openxiangda.workflow.participant.cancelled.v2"];
1519
1545
  export type WorkflowEventTypeV2 = (typeof WORKFLOW_EVENT_TYPES_V2)[number];
1520
1546
  export type EventProducerKind = "data" | "app" | "workflow" | "timer" | "date" | "system";
1521
1547
  export interface EventCatalogEntry {
@@ -1652,6 +1678,10 @@ export type EventFilterCondition = {
1652
1678
  not: EventFilterCondition;
1653
1679
  };
1654
1680
  export interface EventSubscriptionFilter {
1681
+ /** Fixed versioned handler; only valid for workflow step request events. */
1682
+ workflowStep?: {
1683
+ handlerCode: string;
1684
+ };
1655
1685
  resourceCodes?: string[];
1656
1686
  subject?: EventSubjectFilter;
1657
1687
  changedFields?: EventChangedFieldsFilter;
@@ -1728,6 +1758,7 @@ export interface EventReceiptCommand {
1728
1758
  eventId: string;
1729
1759
  deliveryId: string;
1730
1760
  claimToken?: string;
1761
+ workflowStepResult?: WorkflowBusinessStepResult;
1731
1762
  }
1732
1763
  export interface EventReceiptResult {
1733
1764
  schemaVersion: typeof SCHEMA_VERSIONS.eventReceiptResult;
@@ -1784,7 +1815,7 @@ export interface DateTrigger {
1784
1815
  }
1785
1816
  export type WorkflowApprovalMode = "single" | "any" | "all" | "sequence";
1786
1817
  export type WorkflowFieldPolicy = "hidden" | "readonly" | "edit" | "edit_required";
1787
- export type WorkflowCommand = "approve" | "reject" | "return" | "transfer" | "delegate" | "add_assignee" | "resubmit" | "withdraw" | "terminate" | "cc" | "admin_reassign" | "admin_override" | "retry_resolution";
1818
+ export type WorkflowCommand = "save_form" | "approve" | "reject" | "return" | "transfer" | "delegate" | "add_assignee" | "resubmit" | "withdraw" | "terminate" | "cc" | "admin_reassign" | "admin_override" | "retry_resolution";
1788
1819
  export type WorkflowExpression = {
1789
1820
  op: "literal";
1790
1821
  value: unknown;
@@ -1812,11 +1843,29 @@ export interface WorkflowApprovalNode {
1812
1843
  onReject: string;
1813
1844
  allowedOperations?: WorkflowCommand[];
1814
1845
  returnTargets?: string[];
1846
+ /** Immutable reference to an application-owned task page input contract. */
1847
+ taskPageCode?: string;
1848
+ /** Code-owned defaults; labels never change the stable command semantics. */
1849
+ operationPolicy?: Partial<Record<WorkflowConfigurableOperation, WorkflowNodeOperationPolicy>>;
1850
+ /** Explicit upper bound for administrator changes. Topology remains immutable. */
1851
+ administration?: WorkflowApprovalAdministration;
1815
1852
  fieldPolicy?: {
1816
1853
  default?: WorkflowFieldPolicy;
1817
1854
  fields?: Record<string, WorkflowFieldPolicy>;
1818
1855
  };
1819
1856
  }
1857
+ export type WorkflowConfigurableOperation = 'approve' | 'reject' | 'return' | 'transfer' | 'delegate' | 'add_assignee';
1858
+ export type WorkflowConfigurableAssigneeProvider = 'fixed_users' | 'app_role' | 'app_role_in_scope';
1859
+ export interface WorkflowNodeOperationPolicy {
1860
+ label?: string;
1861
+ /** Only approve/reject have comments; existing required reasons stay required. */
1862
+ commentRequired?: boolean;
1863
+ }
1864
+ export interface WorkflowApprovalAdministration {
1865
+ modes?: WorkflowApprovalMode[];
1866
+ assigneeProviders?: WorkflowConfigurableAssigneeProvider[];
1867
+ operations?: WorkflowConfigurableOperation[];
1868
+ }
1820
1869
  export interface WorkflowConditionNode {
1821
1870
  id: string;
1822
1871
  kind: "condition";
@@ -1834,7 +1883,21 @@ export interface WorkflowEndNode {
1834
1883
  title: string;
1835
1884
  outcome: string;
1836
1885
  }
1837
- export type WorkflowNode = WorkflowApprovalNode | WorkflowConditionNode | WorkflowEndNode;
1886
+ export interface WorkflowCcAdministration {
1887
+ assigneeProviders?: WorkflowConfigurableAssigneeProvider[];
1888
+ }
1889
+ /** Recipients are frozen on entry; topology, empty policy and notification are code-owned. */
1890
+ export interface WorkflowCcNode {
1891
+ id: string;
1892
+ kind: 'cc';
1893
+ title: string;
1894
+ binding: string;
1895
+ next: string;
1896
+ emptyPolicy: 'block' | 'skip';
1897
+ notify?: boolean;
1898
+ administration?: WorkflowCcAdministration;
1899
+ }
1900
+ export type WorkflowNode = WorkflowApprovalNode | WorkflowConditionNode | WorkflowEndNode | WorkflowCcNode | WorkflowBusinessStepNode;
1838
1901
  export interface WorkflowDefinition {
1839
1902
  schemaVersion: typeof SCHEMA_VERSIONS.workflowDefinition;
1840
1903
  code: string;
@@ -1858,6 +1921,10 @@ export interface WorkflowDefinition {
1858
1921
  };
1859
1922
  };
1860
1923
  nodes: Record<string, WorkflowNode>;
1924
+ /** Code-owned page definitions, independent of node administrator settings. */
1925
+ taskPages?: Record<string, import('./native-compiler/workflow-task-page.js').WorkflowTaskPage>;
1926
+ /** Read-only explanations versioned with the executing definition. */
1927
+ readability?: import('./native-compiler/workflow-graph.js').WorkflowReadability;
1861
1928
  }
1862
1929
  export interface WorkflowInstanceCommandPolicies {
1863
1930
  withdraw?: {
@@ -1898,6 +1965,127 @@ export interface WorkflowBindingEntry {
1898
1965
  max?: number;
1899
1966
  /** Long-term delegation is enabled by default for eligible role-bound providers. */
1900
1967
  delegatable?: boolean;
1968
+ /** Code-owned dimensions and native sources; administrators only maintain bounded rules. */
1969
+ routing?: WorkflowAssignmentRoutingPolicy;
1970
+ }
1971
+ export interface WorkflowAssignmentRoutingPolicy {
1972
+ policyCode: string;
1973
+ title: string;
1974
+ strategy: 'replace_then_append' | 'replace_only';
1975
+ dimensions: Record<string, {
1976
+ title: string;
1977
+ valueFrom: string;
1978
+ }>;
1979
+ sources: Record<string, {
1980
+ title: string;
1981
+ provider: 'app_role' | 'app_role_in_scope';
1982
+ roleCode: string;
1983
+ scope?: {
1984
+ dimension: string;
1985
+ valueFrom?: string;
1986
+ value?: string;
1987
+ };
1988
+ }>;
1989
+ }
1990
+ export interface WorkflowAssignmentRoutingRule {
1991
+ ruleCode: string;
1992
+ title: string;
1993
+ enabled: boolean;
1994
+ workflowCode?: string;
1995
+ nodeId?: string;
1996
+ matches: Record<string, string[]>;
1997
+ sourceCode: string;
1998
+ effect: 'append' | 'replace';
1999
+ priority: number;
2000
+ validFrom?: IsoDateTime;
2001
+ validTo?: IsoDateTime;
2002
+ }
2003
+ export interface WorkflowAssignmentRoutingConfiguration {
2004
+ schemaVersion: 'openxiangda.workflow-assignment-routing/v2';
2005
+ policy: WorkflowAssignmentRoutingPolicy;
2006
+ revision: number;
2007
+ rules: WorkflowAssignmentRoutingRule[];
2008
+ updatedBy: string | null;
2009
+ updatedAt: IsoDateTime | null;
2010
+ headRevision: number;
2011
+ effect: 'future_node_entries_keep_existing_tasks';
2012
+ references: Array<{
2013
+ workflowCode: string;
2014
+ nodeId: string;
2015
+ pinned: boolean;
2016
+ }>;
2017
+ }
2018
+ export interface WorkflowAssignmentRoutingMutation {
2019
+ environmentKey?: DeploymentEnvironment;
2020
+ expectedHeadRevision: number;
2021
+ expectedRevision: number;
2022
+ operationId: string;
2023
+ reason: string;
2024
+ rules: WorkflowAssignmentRoutingRule[];
2025
+ }
2026
+ export interface WorkflowAssignmentRoutingReceipt {
2027
+ policyCode: string;
2028
+ revision: number;
2029
+ rules: WorkflowAssignmentRoutingRule[];
2030
+ updatedBy: string;
2031
+ updatedAt: IsoDateTime;
2032
+ effect: 'future_node_entries_keep_existing_tasks';
2033
+ replayed: boolean;
2034
+ }
2035
+ export interface WorkflowRoleReference {
2036
+ workflowCode: string;
2037
+ workflowTitle: string;
2038
+ nodeId: string;
2039
+ nodeTitle: string;
2040
+ roleCode: string;
2041
+ definitionVersion: number;
2042
+ bindingVersion: number;
2043
+ definitionDigest: Sha256Digest;
2044
+ bindingDigest: Sha256Digest;
2045
+ configurationRevision: number;
2046
+ contexts: Array<'active' | 'in_flight'>;
2047
+ source: 'default_binding' | 'node_override' | 'routing_source';
2048
+ provider: 'app_role' | 'app_role_in_scope';
2049
+ routingSourceCode?: string;
2050
+ scopeDimensionCode?: string;
2051
+ }
2052
+ export interface WorkflowRoleReferencePage {
2053
+ schemaVersion: typeof SCHEMA_VERSIONS.workflowRoleReferencePage;
2054
+ roleCode: string;
2055
+ items: WorkflowRoleReference[];
2056
+ total: number;
2057
+ limit: number;
2058
+ offset: number;
2059
+ meaning: 'potential_nodes_keep_existing_tasks';
2060
+ }
2061
+ export interface WorkflowAssignmentRoutingCatalog {
2062
+ items: Array<{
2063
+ policyCode: string;
2064
+ title: string;
2065
+ revision: number;
2066
+ ruleCount: number;
2067
+ referenceCount: number;
2068
+ }>;
2069
+ total: number;
2070
+ limit: number;
2071
+ offset: number;
2072
+ }
2073
+ export interface WorkflowAssignmentRoutingHistory {
2074
+ items: Array<{
2075
+ id: string;
2076
+ revision: number;
2077
+ actorUserId: string;
2078
+ reason: string;
2079
+ before: {
2080
+ revision: number;
2081
+ rules: WorkflowAssignmentRoutingRule[];
2082
+ };
2083
+ after: WorkflowAssignmentRoutingReceipt;
2084
+ createdAt: IsoDateTime;
2085
+ }>;
2086
+ total: number;
2087
+ limit: number;
2088
+ offset: number;
1901
2089
  }
1902
2090
  export interface WorkflowBinding {
1903
2091
  schemaVersion: typeof SCHEMA_VERSIONS.workflowBinding;
@@ -1908,6 +2096,10 @@ export interface WorkflowBinding {
1908
2096
  export interface WorkflowNodeConfigurationPatch {
1909
2097
  title?: string;
1910
2098
  description?: string;
2099
+ mode?: WorkflowApprovalMode;
2100
+ operations?: Partial<Record<WorkflowConfigurableOperation, WorkflowNodeOperationPolicy & {
2101
+ enabled?: boolean;
2102
+ }>>;
1911
2103
  assignee?: {
1912
2104
  provider: "fixed_users";
1913
2105
  users: string[];
@@ -1934,7 +2126,12 @@ export interface WorkflowNodeConfigurations {
1934
2126
  defaults: {
1935
2127
  title: string;
1936
2128
  binding?: WorkflowBindingEntry;
2129
+ mode?: WorkflowApprovalMode;
2130
+ allowedOperations?: WorkflowCommand[];
2131
+ operationPolicy?: Partial<Record<WorkflowConfigurableOperation, WorkflowNodeOperationPolicy>>;
2132
+ fieldPolicy?: WorkflowApprovalNode['fieldPolicy'];
1937
2133
  };
2134
+ administration?: WorkflowApprovalAdministration;
1938
2135
  configuration: WorkflowNodeConfigurationState;
1939
2136
  effective: {
1940
2137
  revision: number;
@@ -1942,6 +2139,10 @@ export interface WorkflowNodeConfigurations {
1942
2139
  description?: string;
1943
2140
  binding?: WorkflowBindingEntry;
1944
2141
  bindingDigest?: string;
2142
+ mode?: WorkflowApprovalMode;
2143
+ allowedOperations?: WorkflowCommand[];
2144
+ operationPolicy?: Partial<Record<WorkflowConfigurableOperation, WorkflowNodeOperationPolicy>>;
2145
+ fieldPolicy?: WorkflowApprovalNode['fieldPolicy'];
1945
2146
  };
1946
2147
  }>;
1947
2148
  principals: {
@@ -1969,6 +2170,19 @@ export interface WorkflowNodeConfigurations {
1969
2170
  createdAt: IsoDateTime;
1970
2171
  }>;
1971
2172
  }
2173
+ export interface WorkflowNodeConfigurationMutation {
2174
+ expectedHeadRevision: number;
2175
+ expectedRevision: number;
2176
+ operationId: string;
2177
+ reason: string;
2178
+ patch: WorkflowNodeConfigurationPatch | null;
2179
+ }
2180
+ export interface WorkflowNodeConfigurationReceipt extends WorkflowNodeConfigurationState {
2181
+ workflowCode: string;
2182
+ nodeId: string;
2183
+ effect: 'future_node_entries_keep_existing_tasks';
2184
+ replayed: boolean;
2185
+ }
1972
2186
  export type ApplicationAdministrationPage = "overview" | "data" | "workflows" | "instances" | "automation" | "roles" | "versions" | "runtime" | "audit";
1973
2187
  export interface ApplicationAdministrationContext {
1974
2188
  schemaVersion: "openxiangda.application-admin-context/v2";
@@ -2451,6 +2665,7 @@ export interface WorkflowSurface {
2451
2665
  navigationTarget: WorkflowNavigationTarget | null;
2452
2666
  instance: WorkflowInstance | Record<string, unknown>;
2453
2667
  task: WorkflowTask | Record<string, unknown> | null;
2668
+ taskForm?: import('./native-compiler/workflow-task-page.js').WorkflowTaskFormSurface;
2454
2669
  presentation: WorkflowSurfacePresentation;
2455
2670
  fieldPolicy: {
2456
2671
  default: WorkflowFieldPolicy;