openxiangda-contracts 2.0.0-alpha.80 → 2.0.0-alpha.81

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.
package/dist/schemas.d.ts CHANGED
@@ -1526,7 +1526,7 @@ export declare const nativeRoleMembershipPageSchema: {
1526
1526
  readonly items: {
1527
1527
  readonly type: "object";
1528
1528
  readonly additionalProperties: false;
1529
- readonly required: readonly ["id", "environmentId", "userId", "roleCode", "roleSource", "sourceCode", "scopeGrants", "status", "revision", "validFrom", "validTo"];
1529
+ readonly required: readonly ["id", "environmentId", "userId", "roleCode", "roleSource", "sourceCode", "maintainable", "immutableReason", "scopeGrants", "status", "revision", "validFrom", "validTo"];
1530
1530
  readonly properties: {
1531
1531
  readonly id: {
1532
1532
  readonly type: "string";
@@ -1564,6 +1564,12 @@ export declare const nativeRoleMembershipPageSchema: {
1564
1564
  readonly maxLength: 255;
1565
1565
  readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
1566
1566
  };
1567
+ readonly maintainable: {
1568
+ readonly type: "boolean";
1569
+ };
1570
+ readonly immutableReason: {
1571
+ readonly enum: readonly ["authenticated_user_role", "authorization_projection", null];
1572
+ };
1567
1573
  readonly scopeGrants: {
1568
1574
  readonly type: "array";
1569
1575
  readonly maxItems: 100;
@@ -1659,14 +1665,14 @@ export declare const nativeRoleMembershipPageSchema: {
1659
1665
  };
1660
1666
  };
1661
1667
  };
1662
- export declare const nativeSuperAdminGrantPageSchema: {
1663
- readonly $id: "openxiangda.native-super-admin-grant-page/v2";
1668
+ export declare const nativeRoleManagementGrantPageSchema: {
1669
+ readonly $id: "openxiangda.native-role-management-grant-page/v2";
1664
1670
  readonly type: "object";
1665
1671
  readonly additionalProperties: false;
1666
1672
  readonly required: readonly ["schemaVersion", "items", "total", "limit", "offset"];
1667
1673
  readonly properties: {
1668
1674
  readonly schemaVersion: {
1669
- readonly const: "openxiangda.native-super-admin-grant-page/v2";
1675
+ readonly const: "openxiangda.native-role-management-grant-page/v2";
1670
1676
  };
1671
1677
  readonly items: {
1672
1678
  readonly type: "array";
@@ -1674,29 +1680,44 @@ export declare const nativeSuperAdminGrantPageSchema: {
1674
1680
  readonly items: {
1675
1681
  readonly type: "object";
1676
1682
  readonly additionalProperties: false;
1677
- readonly required: readonly ["id", "tenantId", "appCode", "userId", "status", "revision"];
1683
+ readonly required: readonly ["id", "environmentId", "subjectRoleCode", "manageAllRoles", "managedRoleCodes", "actions", "status", "revision", "reason", "createdBy", "updatedBy", "createdAt", "updatedAt"];
1678
1684
  readonly properties: {
1679
1685
  readonly id: {
1680
1686
  readonly type: "string";
1681
1687
  readonly minLength: 1;
1682
1688
  };
1683
- readonly tenantId: {
1689
+ readonly environmentId: {
1684
1690
  readonly type: "string";
1685
1691
  readonly minLength: 1;
1686
1692
  };
1687
- readonly appCode: {
1693
+ readonly subjectRoleCode: {
1688
1694
  readonly type: "string";
1689
1695
  readonly minLength: 1;
1696
+ readonly maxLength: 255;
1697
+ readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
1690
1698
  };
1691
- readonly userId: {
1692
- readonly type: "string";
1693
- readonly minLength: 1;
1699
+ readonly manageAllRoles: {
1700
+ readonly type: "boolean";
1694
1701
  };
1695
- readonly userName: {
1696
- readonly type: readonly ["string", "null"];
1702
+ readonly managedRoleCodes: {
1703
+ readonly type: "array";
1704
+ readonly maxItems: 1000;
1705
+ readonly uniqueItems: true;
1706
+ readonly items: {
1707
+ readonly type: "string";
1708
+ readonly minLength: 1;
1709
+ readonly maxLength: 255;
1710
+ readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
1711
+ };
1697
1712
  };
1698
- readonly userAvatar: {
1699
- readonly type: readonly ["string", "null"];
1713
+ readonly actions: {
1714
+ readonly type: "array";
1715
+ readonly minItems: 1;
1716
+ readonly maxItems: 5;
1717
+ readonly uniqueItems: true;
1718
+ readonly items: {
1719
+ readonly enum: readonly ["membership.read", "membership.assign", "membership.update", "membership.revoke", "management.delegate"];
1720
+ };
1700
1721
  };
1701
1722
  readonly status: {
1702
1723
  readonly enum: readonly ["active", "revoked"];
@@ -1705,6 +1726,19 @@ export declare const nativeSuperAdminGrantPageSchema: {
1705
1726
  readonly type: "integer";
1706
1727
  readonly minimum: 1;
1707
1728
  };
1729
+ readonly reason: {
1730
+ readonly type: "string";
1731
+ readonly minLength: 1;
1732
+ readonly maxLength: 1000;
1733
+ };
1734
+ readonly createdBy: {
1735
+ readonly type: "string";
1736
+ readonly minLength: 1;
1737
+ };
1738
+ readonly updatedBy: {
1739
+ readonly type: "string";
1740
+ readonly minLength: 1;
1741
+ };
1708
1742
  readonly createdAt: {
1709
1743
  readonly anyOf: readonly [{
1710
1744
  readonly type: "string";
@@ -1739,129 +1773,502 @@ export declare const nativeSuperAdminGrantPageSchema: {
1739
1773
  };
1740
1774
  };
1741
1775
  };
1742
- export declare const nativeRelationshipGrantPageSchema: {
1743
- readonly $id: "openxiangda.native-relationship-grant-page/v2";
1776
+ export declare const nativeAuthorizationMutationReceiptSchema: {
1777
+ readonly $id: "openxiangda.native-authorization-mutation-receipt/v2";
1744
1778
  readonly type: "object";
1745
1779
  readonly additionalProperties: false;
1746
- readonly required: readonly ["schemaVersion", "items", "total", "limit", "offset"];
1780
+ readonly required: readonly ["schemaVersion", "operationId", "operationKind", "requestDigest", "actorUserId", "reason", "result", "replayed", "createdAt"];
1747
1781
  readonly properties: {
1748
1782
  readonly schemaVersion: {
1749
- readonly const: "openxiangda.native-relationship-grant-page/v2";
1783
+ readonly const: "openxiangda.native-authorization-mutation-receipt/v2";
1750
1784
  };
1751
- readonly items: {
1785
+ readonly operationId: {
1786
+ readonly type: "string";
1787
+ readonly minLength: 1;
1788
+ };
1789
+ readonly operationKind: {
1790
+ readonly type: "string";
1791
+ readonly minLength: 1;
1792
+ };
1793
+ readonly requestDigest: {
1794
+ readonly type: "string";
1795
+ readonly pattern: "^[0-9a-f]{64}$";
1796
+ };
1797
+ readonly actorUserId: {
1798
+ readonly type: "string";
1799
+ readonly minLength: 1;
1800
+ };
1801
+ readonly reason: {
1802
+ readonly type: readonly ["string", "null"];
1803
+ readonly maxLength: 1000;
1804
+ };
1805
+ readonly result: {
1806
+ readonly type: "object";
1807
+ };
1808
+ readonly replayed: {
1809
+ readonly type: "boolean";
1810
+ };
1811
+ readonly createdAt: {
1812
+ readonly type: "string";
1813
+ readonly format: "date-time";
1814
+ };
1815
+ };
1816
+ };
1817
+ export declare const nativeAuthorizationManagementCatalogSchema: {
1818
+ readonly $id: "openxiangda.native-authorization-catalog/v2";
1819
+ readonly type: "object";
1820
+ readonly additionalProperties: false;
1821
+ readonly required: readonly ["schemaVersion", "environment", "roles", "roleManagement", "scopeDimensions"];
1822
+ readonly properties: {
1823
+ readonly schemaVersion: {
1824
+ readonly const: "openxiangda.native-authorization-catalog/v2";
1825
+ };
1826
+ readonly environment: {
1827
+ readonly type: "object";
1828
+ readonly additionalProperties: false;
1829
+ readonly required: readonly ["id", "key", "activeAppVersionId", "headRevision", "dataLogicalRevisionId", "authzRevisionId", "authzVersion", "scopeDataVersion"];
1830
+ readonly properties: {
1831
+ readonly id: {
1832
+ readonly type: "string";
1833
+ readonly minLength: 1;
1834
+ };
1835
+ readonly key: {
1836
+ readonly enum: readonly ["preproduction", "production"];
1837
+ };
1838
+ readonly activeAppVersionId: {
1839
+ readonly type: "string";
1840
+ readonly minLength: 1;
1841
+ };
1842
+ readonly headRevision: {
1843
+ readonly type: "integer";
1844
+ readonly minimum: 1;
1845
+ };
1846
+ readonly dataLogicalRevisionId: {
1847
+ readonly type: "string";
1848
+ readonly minLength: 1;
1849
+ };
1850
+ readonly authzRevisionId: {
1851
+ readonly type: "string";
1852
+ readonly minLength: 1;
1853
+ };
1854
+ readonly authzVersion: {
1855
+ readonly type: "integer";
1856
+ readonly minimum: 1;
1857
+ };
1858
+ readonly scopeDataVersion: {
1859
+ readonly type: "string";
1860
+ readonly minLength: 1;
1861
+ };
1862
+ };
1863
+ };
1864
+ readonly roles: {
1752
1865
  readonly type: "array";
1753
- readonly maxItems: 100;
1866
+ readonly maxItems: 2000;
1754
1867
  readonly items: {
1755
1868
  readonly type: "object";
1756
1869
  readonly additionalProperties: false;
1757
- readonly required: readonly ["id", "environmentId", "relationCode", "subjectType", "subjectKey", "resourceCode", "resourceId", "operations", "sourceCode", "status", "revision", "validFrom", "validTo"];
1870
+ readonly required: readonly ["code", "name", "description", "capabilityCodes", "source"];
1758
1871
  readonly properties: {
1759
- readonly id: {
1760
- readonly type: "string";
1761
- readonly minLength: 1;
1762
- };
1763
- readonly environmentId: {
1764
- readonly type: "string";
1765
- readonly minLength: 1;
1766
- };
1767
- readonly relationCode: {
1872
+ readonly code: {
1768
1873
  readonly type: "string";
1769
1874
  readonly minLength: 1;
1770
1875
  readonly maxLength: 255;
1771
1876
  readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
1772
1877
  };
1773
- readonly subjectType: {
1774
- readonly enum: readonly ["user", "role_membership"];
1775
- };
1776
- readonly subjectKey: {
1777
- readonly type: "string";
1778
- readonly minLength: 1;
1779
- };
1780
- readonly resourceCode: {
1878
+ readonly name: {
1781
1879
  readonly type: "string";
1782
1880
  readonly minLength: 1;
1783
- readonly maxLength: 255;
1784
- readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
1785
1881
  };
1786
- readonly resourceId: {
1787
- readonly type: "string";
1788
- readonly minLength: 1;
1882
+ readonly description: {
1883
+ readonly type: readonly ["string", "null"];
1789
1884
  };
1790
- readonly operations: {
1885
+ readonly capabilityCodes: {
1791
1886
  readonly type: "array";
1792
- readonly minItems: 1;
1793
- readonly maxItems: 100;
1887
+ readonly maxItems: 2000;
1794
1888
  readonly uniqueItems: true;
1795
1889
  readonly items: {
1796
1890
  readonly type: "string";
1797
1891
  readonly minLength: 1;
1798
1892
  };
1799
1893
  };
1800
- readonly sourceCode: {
1894
+ readonly source: {
1895
+ readonly enum: readonly ["package", "manual"];
1896
+ };
1897
+ };
1898
+ };
1899
+ };
1900
+ readonly roleManagement: {
1901
+ readonly type: "object";
1902
+ readonly additionalProperties: false;
1903
+ readonly required: readonly ["unrestricted", "wildcardActions", "roles"];
1904
+ readonly properties: {
1905
+ readonly unrestricted: {
1906
+ readonly type: "boolean";
1907
+ };
1908
+ readonly wildcardActions: {
1909
+ readonly type: "array";
1910
+ readonly maxItems: 5;
1911
+ readonly uniqueItems: true;
1912
+ readonly items: {
1913
+ readonly enum: readonly ["membership.read", "membership.assign", "membership.update", "membership.revoke", "management.delegate"];
1914
+ };
1915
+ };
1916
+ readonly roles: {
1917
+ readonly type: "array";
1918
+ readonly maxItems: 2000;
1919
+ readonly items: {
1920
+ readonly type: "object";
1921
+ readonly additionalProperties: false;
1922
+ readonly required: readonly ["roleCode", "actions"];
1923
+ readonly properties: {
1924
+ readonly roleCode: {
1925
+ readonly type: "string";
1926
+ readonly minLength: 1;
1927
+ readonly maxLength: 255;
1928
+ readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
1929
+ };
1930
+ readonly actions: {
1931
+ readonly type: "array";
1932
+ readonly maxItems: 5;
1933
+ readonly uniqueItems: true;
1934
+ readonly items: {
1935
+ readonly enum: readonly ["membership.read", "membership.assign", "membership.update", "membership.revoke", "management.delegate"];
1936
+ };
1937
+ };
1938
+ };
1939
+ };
1940
+ };
1941
+ };
1942
+ };
1943
+ readonly scopeDimensions: {
1944
+ readonly type: "array";
1945
+ readonly maxItems: 100;
1946
+ readonly items: {
1947
+ readonly type: "object";
1948
+ readonly additionalProperties: false;
1949
+ readonly required: readonly ["code", "name", "resourceCode", "valueType", "hierarchyMode", "valueSource", "applicability"];
1950
+ readonly properties: {
1951
+ readonly code: {
1801
1952
  readonly type: "string";
1802
1953
  readonly minLength: 1;
1803
1954
  readonly maxLength: 255;
1804
1955
  readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
1805
1956
  };
1806
- readonly status: {
1807
- readonly enum: readonly ["active", "revoked", "expired"];
1808
- };
1809
- readonly revision: {
1810
- readonly type: "integer";
1811
- readonly minimum: 1;
1957
+ readonly name: {
1958
+ readonly type: "string";
1959
+ readonly minLength: 1;
1812
1960
  };
1813
- readonly validFrom: {
1961
+ readonly resourceCode: {
1814
1962
  readonly anyOf: readonly [{
1815
1963
  readonly type: "string";
1816
- readonly format: "date-time";
1964
+ readonly minLength: 1;
1965
+ readonly maxLength: 255;
1966
+ readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
1817
1967
  }, {
1818
1968
  readonly type: "null";
1819
1969
  }];
1820
1970
  };
1821
- readonly validTo: {
1822
- readonly anyOf: readonly [{
1823
- readonly type: "string";
1824
- readonly format: "date-time";
1825
- }, {
1826
- readonly type: "null";
1827
- }];
1971
+ readonly valueType: {
1972
+ readonly type: readonly ["string", "null"];
1828
1973
  };
1829
- readonly createdAt: {
1830
- readonly anyOf: readonly [{
1831
- readonly type: "string";
1832
- readonly format: "date-time";
1833
- }, {
1834
- readonly type: "null";
1835
- }];
1974
+ readonly hierarchyMode: {
1975
+ readonly type: readonly ["string", "null"];
1836
1976
  };
1837
- readonly updatedAt: {
1977
+ readonly valueSource: {
1838
1978
  readonly anyOf: readonly [{
1839
- readonly type: "string";
1840
- readonly format: "date-time";
1979
+ readonly type: "object";
1841
1980
  }, {
1842
1981
  readonly type: "null";
1843
1982
  }];
1844
1983
  };
1845
- };
1846
- };
1847
- };
1848
- readonly total: {
1849
- readonly type: "integer";
1850
- readonly minimum: 0;
1851
- };
1852
- readonly limit: {
1853
- readonly type: "integer";
1854
- readonly minimum: 1;
1855
- readonly maximum: 100;
1856
- };
1857
- readonly offset: {
1858
- readonly type: "integer";
1859
- readonly minimum: 0;
1860
- };
1861
- };
1862
- };
1863
- export declare const nativeAuthorizationProjectionHealthSchema: {
1864
- readonly $id: "openxiangda.native-authorization-projection-health/v2";
1984
+ readonly applicability: {
1985
+ readonly type: "object";
1986
+ readonly additionalProperties: false;
1987
+ readonly required: readonly ["dimensionCode", "allRoles", "roleCodes", "unrestrictedRoleCodes", "rules"];
1988
+ readonly properties: {
1989
+ readonly dimensionCode: {
1990
+ readonly type: "string";
1991
+ readonly minLength: 1;
1992
+ readonly maxLength: 255;
1993
+ readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
1994
+ };
1995
+ readonly allRoles: {
1996
+ readonly type: "boolean";
1997
+ };
1998
+ readonly roleCodes: {
1999
+ readonly type: "array";
2000
+ readonly maxItems: 2000;
2001
+ readonly uniqueItems: true;
2002
+ readonly items: {
2003
+ readonly type: "string";
2004
+ readonly minLength: 1;
2005
+ readonly maxLength: 255;
2006
+ readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
2007
+ };
2008
+ };
2009
+ readonly unrestrictedRoleCodes: {
2010
+ readonly type: "array";
2011
+ readonly maxItems: 2000;
2012
+ readonly uniqueItems: true;
2013
+ readonly items: {
2014
+ readonly type: "string";
2015
+ readonly minLength: 1;
2016
+ readonly maxLength: 255;
2017
+ readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
2018
+ };
2019
+ };
2020
+ readonly rules: {
2021
+ readonly type: "array";
2022
+ readonly maxItems: 200;
2023
+ readonly items: {
2024
+ readonly type: "object";
2025
+ readonly additionalProperties: false;
2026
+ readonly required: readonly ["policyCode", "allRoles", "roleCodes", "unrestrictedRoleCodes"];
2027
+ readonly properties: {
2028
+ readonly policyCode: {
2029
+ readonly type: "string";
2030
+ readonly minLength: 1;
2031
+ readonly maxLength: 255;
2032
+ readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
2033
+ };
2034
+ readonly allRoles: {
2035
+ readonly type: "boolean";
2036
+ };
2037
+ readonly roleCodes: {
2038
+ readonly type: "array";
2039
+ readonly maxItems: 2000;
2040
+ readonly uniqueItems: true;
2041
+ readonly items: {
2042
+ readonly type: "string";
2043
+ readonly minLength: 1;
2044
+ readonly maxLength: 255;
2045
+ readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
2046
+ };
2047
+ };
2048
+ readonly unrestrictedRoleCodes: {
2049
+ readonly type: "array";
2050
+ readonly maxItems: 2000;
2051
+ readonly uniqueItems: true;
2052
+ readonly items: {
2053
+ readonly type: "string";
2054
+ readonly minLength: 1;
2055
+ readonly maxLength: 255;
2056
+ readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
2057
+ };
2058
+ };
2059
+ };
2060
+ };
2061
+ };
2062
+ };
2063
+ };
2064
+ };
2065
+ };
2066
+ };
2067
+ };
2068
+ };
2069
+ export declare const nativeSuperAdminGrantPageSchema: {
2070
+ readonly $id: "openxiangda.native-super-admin-grant-page/v2";
2071
+ readonly type: "object";
2072
+ readonly additionalProperties: false;
2073
+ readonly required: readonly ["schemaVersion", "items", "total", "limit", "offset"];
2074
+ readonly properties: {
2075
+ readonly schemaVersion: {
2076
+ readonly const: "openxiangda.native-super-admin-grant-page/v2";
2077
+ };
2078
+ readonly items: {
2079
+ readonly type: "array";
2080
+ readonly maxItems: 100;
2081
+ readonly items: {
2082
+ readonly type: "object";
2083
+ readonly additionalProperties: false;
2084
+ readonly required: readonly ["id", "tenantId", "appCode", "userId", "status", "revision"];
2085
+ readonly properties: {
2086
+ readonly id: {
2087
+ readonly type: "string";
2088
+ readonly minLength: 1;
2089
+ };
2090
+ readonly tenantId: {
2091
+ readonly type: "string";
2092
+ readonly minLength: 1;
2093
+ };
2094
+ readonly appCode: {
2095
+ readonly type: "string";
2096
+ readonly minLength: 1;
2097
+ };
2098
+ readonly userId: {
2099
+ readonly type: "string";
2100
+ readonly minLength: 1;
2101
+ };
2102
+ readonly userName: {
2103
+ readonly type: readonly ["string", "null"];
2104
+ };
2105
+ readonly userAvatar: {
2106
+ readonly type: readonly ["string", "null"];
2107
+ };
2108
+ readonly status: {
2109
+ readonly enum: readonly ["active", "revoked"];
2110
+ };
2111
+ readonly revision: {
2112
+ readonly type: "integer";
2113
+ readonly minimum: 1;
2114
+ };
2115
+ readonly createdAt: {
2116
+ readonly anyOf: readonly [{
2117
+ readonly type: "string";
2118
+ readonly format: "date-time";
2119
+ }, {
2120
+ readonly type: "null";
2121
+ }];
2122
+ };
2123
+ readonly updatedAt: {
2124
+ readonly anyOf: readonly [{
2125
+ readonly type: "string";
2126
+ readonly format: "date-time";
2127
+ }, {
2128
+ readonly type: "null";
2129
+ }];
2130
+ };
2131
+ };
2132
+ };
2133
+ };
2134
+ readonly total: {
2135
+ readonly type: "integer";
2136
+ readonly minimum: 0;
2137
+ };
2138
+ readonly limit: {
2139
+ readonly type: "integer";
2140
+ readonly minimum: 1;
2141
+ readonly maximum: 100;
2142
+ };
2143
+ readonly offset: {
2144
+ readonly type: "integer";
2145
+ readonly minimum: 0;
2146
+ };
2147
+ };
2148
+ };
2149
+ export declare const nativeRelationshipGrantPageSchema: {
2150
+ readonly $id: "openxiangda.native-relationship-grant-page/v2";
2151
+ readonly type: "object";
2152
+ readonly additionalProperties: false;
2153
+ readonly required: readonly ["schemaVersion", "items", "total", "limit", "offset"];
2154
+ readonly properties: {
2155
+ readonly schemaVersion: {
2156
+ readonly const: "openxiangda.native-relationship-grant-page/v2";
2157
+ };
2158
+ readonly items: {
2159
+ readonly type: "array";
2160
+ readonly maxItems: 100;
2161
+ readonly items: {
2162
+ readonly type: "object";
2163
+ readonly additionalProperties: false;
2164
+ readonly required: readonly ["id", "environmentId", "relationCode", "subjectType", "subjectKey", "resourceCode", "resourceId", "operations", "sourceCode", "status", "revision", "validFrom", "validTo"];
2165
+ readonly properties: {
2166
+ readonly id: {
2167
+ readonly type: "string";
2168
+ readonly minLength: 1;
2169
+ };
2170
+ readonly environmentId: {
2171
+ readonly type: "string";
2172
+ readonly minLength: 1;
2173
+ };
2174
+ readonly relationCode: {
2175
+ readonly type: "string";
2176
+ readonly minLength: 1;
2177
+ readonly maxLength: 255;
2178
+ readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
2179
+ };
2180
+ readonly subjectType: {
2181
+ readonly enum: readonly ["user", "role_membership"];
2182
+ };
2183
+ readonly subjectKey: {
2184
+ readonly type: "string";
2185
+ readonly minLength: 1;
2186
+ };
2187
+ readonly resourceCode: {
2188
+ readonly type: "string";
2189
+ readonly minLength: 1;
2190
+ readonly maxLength: 255;
2191
+ readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
2192
+ };
2193
+ readonly resourceId: {
2194
+ readonly type: "string";
2195
+ readonly minLength: 1;
2196
+ };
2197
+ readonly operations: {
2198
+ readonly type: "array";
2199
+ readonly minItems: 1;
2200
+ readonly maxItems: 100;
2201
+ readonly uniqueItems: true;
2202
+ readonly items: {
2203
+ readonly type: "string";
2204
+ readonly minLength: 1;
2205
+ };
2206
+ };
2207
+ readonly sourceCode: {
2208
+ readonly type: "string";
2209
+ readonly minLength: 1;
2210
+ readonly maxLength: 255;
2211
+ readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
2212
+ };
2213
+ readonly status: {
2214
+ readonly enum: readonly ["active", "revoked", "expired"];
2215
+ };
2216
+ readonly revision: {
2217
+ readonly type: "integer";
2218
+ readonly minimum: 1;
2219
+ };
2220
+ readonly validFrom: {
2221
+ readonly anyOf: readonly [{
2222
+ readonly type: "string";
2223
+ readonly format: "date-time";
2224
+ }, {
2225
+ readonly type: "null";
2226
+ }];
2227
+ };
2228
+ readonly validTo: {
2229
+ readonly anyOf: readonly [{
2230
+ readonly type: "string";
2231
+ readonly format: "date-time";
2232
+ }, {
2233
+ readonly type: "null";
2234
+ }];
2235
+ };
2236
+ readonly createdAt: {
2237
+ readonly anyOf: readonly [{
2238
+ readonly type: "string";
2239
+ readonly format: "date-time";
2240
+ }, {
2241
+ readonly type: "null";
2242
+ }];
2243
+ };
2244
+ readonly updatedAt: {
2245
+ readonly anyOf: readonly [{
2246
+ readonly type: "string";
2247
+ readonly format: "date-time";
2248
+ }, {
2249
+ readonly type: "null";
2250
+ }];
2251
+ };
2252
+ };
2253
+ };
2254
+ };
2255
+ readonly total: {
2256
+ readonly type: "integer";
2257
+ readonly minimum: 0;
2258
+ };
2259
+ readonly limit: {
2260
+ readonly type: "integer";
2261
+ readonly minimum: 1;
2262
+ readonly maximum: 100;
2263
+ };
2264
+ readonly offset: {
2265
+ readonly type: "integer";
2266
+ readonly minimum: 0;
2267
+ };
2268
+ };
2269
+ };
2270
+ export declare const nativeAuthorizationProjectionHealthSchema: {
2271
+ readonly $id: "openxiangda.native-authorization-projection-health/v2";
1865
2272
  readonly type: "object";
1866
2273
  readonly additionalProperties: false;
1867
2274
  readonly required: readonly ["schemaVersion", "ready", "environmentId", "authzRevisionId", "activeAuthzRevisionId", "sourceCount", "sources"];
@@ -17353,48 +17760,300 @@ export declare const contractSchemas: {
17353
17760
  };
17354
17761
  };
17355
17762
  };
17356
- readonly principal: {
17357
- readonly anyOf: readonly [{
17763
+ readonly principal: {
17764
+ readonly anyOf: readonly [{
17765
+ readonly type: "object";
17766
+ readonly additionalProperties: false;
17767
+ readonly required: readonly ["type", "userId", "roleCodes", "capabilityCodes", "isAppSuperAdmin", "identityScope"];
17768
+ readonly properties: {
17769
+ readonly type: {
17770
+ readonly enum: readonly ["user_union", "developer"];
17771
+ };
17772
+ readonly userId: {
17773
+ readonly type: "string";
17774
+ readonly minLength: 1;
17775
+ };
17776
+ readonly roleCodes: {
17777
+ readonly type: "array";
17778
+ readonly maxItems: 128;
17779
+ readonly uniqueItems: true;
17780
+ readonly items: {
17781
+ readonly type: "string";
17782
+ readonly minLength: 1;
17783
+ };
17784
+ };
17785
+ readonly capabilityCodes: {
17786
+ readonly type: "array";
17787
+ readonly maxItems: 2048;
17788
+ readonly uniqueItems: true;
17789
+ readonly items: {
17790
+ readonly type: "string";
17791
+ readonly minLength: 1;
17792
+ };
17793
+ };
17794
+ readonly isAppSuperAdmin: {
17795
+ readonly type: "boolean";
17796
+ };
17797
+ readonly identityScope: {
17798
+ readonly type: "string";
17799
+ readonly minLength: 1;
17800
+ };
17801
+ };
17802
+ }, {
17803
+ readonly type: "null";
17804
+ }];
17805
+ };
17806
+ };
17807
+ };
17808
+ readonly nativeAuthorizationManagementCatalog: {
17809
+ readonly $id: "openxiangda.native-authorization-catalog/v2";
17810
+ readonly type: "object";
17811
+ readonly additionalProperties: false;
17812
+ readonly required: readonly ["schemaVersion", "environment", "roles", "roleManagement", "scopeDimensions"];
17813
+ readonly properties: {
17814
+ readonly schemaVersion: {
17815
+ readonly const: "openxiangda.native-authorization-catalog/v2";
17816
+ };
17817
+ readonly environment: {
17818
+ readonly type: "object";
17819
+ readonly additionalProperties: false;
17820
+ readonly required: readonly ["id", "key", "activeAppVersionId", "headRevision", "dataLogicalRevisionId", "authzRevisionId", "authzVersion", "scopeDataVersion"];
17821
+ readonly properties: {
17822
+ readonly id: {
17823
+ readonly type: "string";
17824
+ readonly minLength: 1;
17825
+ };
17826
+ readonly key: {
17827
+ readonly enum: readonly ["preproduction", "production"];
17828
+ };
17829
+ readonly activeAppVersionId: {
17830
+ readonly type: "string";
17831
+ readonly minLength: 1;
17832
+ };
17833
+ readonly headRevision: {
17834
+ readonly type: "integer";
17835
+ readonly minimum: 1;
17836
+ };
17837
+ readonly dataLogicalRevisionId: {
17838
+ readonly type: "string";
17839
+ readonly minLength: 1;
17840
+ };
17841
+ readonly authzRevisionId: {
17842
+ readonly type: "string";
17843
+ readonly minLength: 1;
17844
+ };
17845
+ readonly authzVersion: {
17846
+ readonly type: "integer";
17847
+ readonly minimum: 1;
17848
+ };
17849
+ readonly scopeDataVersion: {
17850
+ readonly type: "string";
17851
+ readonly minLength: 1;
17852
+ };
17853
+ };
17854
+ };
17855
+ readonly roles: {
17856
+ readonly type: "array";
17857
+ readonly maxItems: 2000;
17858
+ readonly items: {
17859
+ readonly type: "object";
17860
+ readonly additionalProperties: false;
17861
+ readonly required: readonly ["code", "name", "description", "capabilityCodes", "source"];
17862
+ readonly properties: {
17863
+ readonly code: {
17864
+ readonly type: "string";
17865
+ readonly minLength: 1;
17866
+ readonly maxLength: 255;
17867
+ readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
17868
+ };
17869
+ readonly name: {
17870
+ readonly type: "string";
17871
+ readonly minLength: 1;
17872
+ };
17873
+ readonly description: {
17874
+ readonly type: readonly ["string", "null"];
17875
+ };
17876
+ readonly capabilityCodes: {
17877
+ readonly type: "array";
17878
+ readonly maxItems: 2000;
17879
+ readonly uniqueItems: true;
17880
+ readonly items: {
17881
+ readonly type: "string";
17882
+ readonly minLength: 1;
17883
+ };
17884
+ };
17885
+ readonly source: {
17886
+ readonly enum: readonly ["package", "manual"];
17887
+ };
17888
+ };
17889
+ };
17890
+ };
17891
+ readonly roleManagement: {
17892
+ readonly type: "object";
17893
+ readonly additionalProperties: false;
17894
+ readonly required: readonly ["unrestricted", "wildcardActions", "roles"];
17895
+ readonly properties: {
17896
+ readonly unrestricted: {
17897
+ readonly type: "boolean";
17898
+ };
17899
+ readonly wildcardActions: {
17900
+ readonly type: "array";
17901
+ readonly maxItems: 5;
17902
+ readonly uniqueItems: true;
17903
+ readonly items: {
17904
+ readonly enum: readonly ["membership.read", "membership.assign", "membership.update", "membership.revoke", "management.delegate"];
17905
+ };
17906
+ };
17907
+ readonly roles: {
17908
+ readonly type: "array";
17909
+ readonly maxItems: 2000;
17910
+ readonly items: {
17911
+ readonly type: "object";
17912
+ readonly additionalProperties: false;
17913
+ readonly required: readonly ["roleCode", "actions"];
17914
+ readonly properties: {
17915
+ readonly roleCode: {
17916
+ readonly type: "string";
17917
+ readonly minLength: 1;
17918
+ readonly maxLength: 255;
17919
+ readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
17920
+ };
17921
+ readonly actions: {
17922
+ readonly type: "array";
17923
+ readonly maxItems: 5;
17924
+ readonly uniqueItems: true;
17925
+ readonly items: {
17926
+ readonly enum: readonly ["membership.read", "membership.assign", "membership.update", "membership.revoke", "management.delegate"];
17927
+ };
17928
+ };
17929
+ };
17930
+ };
17931
+ };
17932
+ };
17933
+ };
17934
+ readonly scopeDimensions: {
17935
+ readonly type: "array";
17936
+ readonly maxItems: 100;
17937
+ readonly items: {
17358
17938
  readonly type: "object";
17359
17939
  readonly additionalProperties: false;
17360
- readonly required: readonly ["type", "userId", "roleCodes", "capabilityCodes", "isAppSuperAdmin", "identityScope"];
17940
+ readonly required: readonly ["code", "name", "resourceCode", "valueType", "hierarchyMode", "valueSource", "applicability"];
17361
17941
  readonly properties: {
17362
- readonly type: {
17363
- readonly enum: readonly ["user_union", "developer"];
17942
+ readonly code: {
17943
+ readonly type: "string";
17944
+ readonly minLength: 1;
17945
+ readonly maxLength: 255;
17946
+ readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
17364
17947
  };
17365
- readonly userId: {
17948
+ readonly name: {
17366
17949
  readonly type: "string";
17367
17950
  readonly minLength: 1;
17368
17951
  };
17369
- readonly roleCodes: {
17370
- readonly type: "array";
17371
- readonly maxItems: 128;
17372
- readonly uniqueItems: true;
17373
- readonly items: {
17952
+ readonly resourceCode: {
17953
+ readonly anyOf: readonly [{
17374
17954
  readonly type: "string";
17375
17955
  readonly minLength: 1;
17376
- };
17956
+ readonly maxLength: 255;
17957
+ readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
17958
+ }, {
17959
+ readonly type: "null";
17960
+ }];
17377
17961
  };
17378
- readonly capabilityCodes: {
17379
- readonly type: "array";
17380
- readonly maxItems: 2048;
17381
- readonly uniqueItems: true;
17382
- readonly items: {
17383
- readonly type: "string";
17384
- readonly minLength: 1;
17385
- };
17962
+ readonly valueType: {
17963
+ readonly type: readonly ["string", "null"];
17386
17964
  };
17387
- readonly isAppSuperAdmin: {
17388
- readonly type: "boolean";
17965
+ readonly hierarchyMode: {
17966
+ readonly type: readonly ["string", "null"];
17389
17967
  };
17390
- readonly identityScope: {
17391
- readonly type: "string";
17392
- readonly minLength: 1;
17968
+ readonly valueSource: {
17969
+ readonly anyOf: readonly [{
17970
+ readonly type: "object";
17971
+ }, {
17972
+ readonly type: "null";
17973
+ }];
17974
+ };
17975
+ readonly applicability: {
17976
+ readonly type: "object";
17977
+ readonly additionalProperties: false;
17978
+ readonly required: readonly ["dimensionCode", "allRoles", "roleCodes", "unrestrictedRoleCodes", "rules"];
17979
+ readonly properties: {
17980
+ readonly dimensionCode: {
17981
+ readonly type: "string";
17982
+ readonly minLength: 1;
17983
+ readonly maxLength: 255;
17984
+ readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
17985
+ };
17986
+ readonly allRoles: {
17987
+ readonly type: "boolean";
17988
+ };
17989
+ readonly roleCodes: {
17990
+ readonly type: "array";
17991
+ readonly maxItems: 2000;
17992
+ readonly uniqueItems: true;
17993
+ readonly items: {
17994
+ readonly type: "string";
17995
+ readonly minLength: 1;
17996
+ readonly maxLength: 255;
17997
+ readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
17998
+ };
17999
+ };
18000
+ readonly unrestrictedRoleCodes: {
18001
+ readonly type: "array";
18002
+ readonly maxItems: 2000;
18003
+ readonly uniqueItems: true;
18004
+ readonly items: {
18005
+ readonly type: "string";
18006
+ readonly minLength: 1;
18007
+ readonly maxLength: 255;
18008
+ readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
18009
+ };
18010
+ };
18011
+ readonly rules: {
18012
+ readonly type: "array";
18013
+ readonly maxItems: 200;
18014
+ readonly items: {
18015
+ readonly type: "object";
18016
+ readonly additionalProperties: false;
18017
+ readonly required: readonly ["policyCode", "allRoles", "roleCodes", "unrestrictedRoleCodes"];
18018
+ readonly properties: {
18019
+ readonly policyCode: {
18020
+ readonly type: "string";
18021
+ readonly minLength: 1;
18022
+ readonly maxLength: 255;
18023
+ readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
18024
+ };
18025
+ readonly allRoles: {
18026
+ readonly type: "boolean";
18027
+ };
18028
+ readonly roleCodes: {
18029
+ readonly type: "array";
18030
+ readonly maxItems: 2000;
18031
+ readonly uniqueItems: true;
18032
+ readonly items: {
18033
+ readonly type: "string";
18034
+ readonly minLength: 1;
18035
+ readonly maxLength: 255;
18036
+ readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
18037
+ };
18038
+ };
18039
+ readonly unrestrictedRoleCodes: {
18040
+ readonly type: "array";
18041
+ readonly maxItems: 2000;
18042
+ readonly uniqueItems: true;
18043
+ readonly items: {
18044
+ readonly type: "string";
18045
+ readonly minLength: 1;
18046
+ readonly maxLength: 255;
18047
+ readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
18048
+ };
18049
+ };
18050
+ };
18051
+ };
18052
+ };
18053
+ };
17393
18054
  };
17394
18055
  };
17395
- }, {
17396
- readonly type: "null";
17397
- }];
18056
+ };
17398
18057
  };
17399
18058
  };
17400
18059
  };
@@ -17413,7 +18072,7 @@ export declare const contractSchemas: {
17413
18072
  readonly items: {
17414
18073
  readonly type: "object";
17415
18074
  readonly additionalProperties: false;
17416
- readonly required: readonly ["id", "environmentId", "userId", "roleCode", "roleSource", "sourceCode", "scopeGrants", "status", "revision", "validFrom", "validTo"];
18075
+ readonly required: readonly ["id", "environmentId", "userId", "roleCode", "roleSource", "sourceCode", "maintainable", "immutableReason", "scopeGrants", "status", "revision", "validFrom", "validTo"];
17417
18076
  readonly properties: {
17418
18077
  readonly id: {
17419
18078
  readonly type: "string";
@@ -17451,6 +18110,12 @@ export declare const contractSchemas: {
17451
18110
  readonly maxLength: 255;
17452
18111
  readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
17453
18112
  };
18113
+ readonly maintainable: {
18114
+ readonly type: "boolean";
18115
+ };
18116
+ readonly immutableReason: {
18117
+ readonly enum: readonly ["authenticated_user_role", "authorization_projection", null];
18118
+ };
17454
18119
  readonly scopeGrants: {
17455
18120
  readonly type: "array";
17456
18121
  readonly maxItems: 100;
@@ -17546,6 +18211,155 @@ export declare const contractSchemas: {
17546
18211
  };
17547
18212
  };
17548
18213
  };
18214
+ readonly nativeRoleManagementGrantPage: {
18215
+ readonly $id: "openxiangda.native-role-management-grant-page/v2";
18216
+ readonly type: "object";
18217
+ readonly additionalProperties: false;
18218
+ readonly required: readonly ["schemaVersion", "items", "total", "limit", "offset"];
18219
+ readonly properties: {
18220
+ readonly schemaVersion: {
18221
+ readonly const: "openxiangda.native-role-management-grant-page/v2";
18222
+ };
18223
+ readonly items: {
18224
+ readonly type: "array";
18225
+ readonly maxItems: 100;
18226
+ readonly items: {
18227
+ readonly type: "object";
18228
+ readonly additionalProperties: false;
18229
+ readonly required: readonly ["id", "environmentId", "subjectRoleCode", "manageAllRoles", "managedRoleCodes", "actions", "status", "revision", "reason", "createdBy", "updatedBy", "createdAt", "updatedAt"];
18230
+ readonly properties: {
18231
+ readonly id: {
18232
+ readonly type: "string";
18233
+ readonly minLength: 1;
18234
+ };
18235
+ readonly environmentId: {
18236
+ readonly type: "string";
18237
+ readonly minLength: 1;
18238
+ };
18239
+ readonly subjectRoleCode: {
18240
+ readonly type: "string";
18241
+ readonly minLength: 1;
18242
+ readonly maxLength: 255;
18243
+ readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
18244
+ };
18245
+ readonly manageAllRoles: {
18246
+ readonly type: "boolean";
18247
+ };
18248
+ readonly managedRoleCodes: {
18249
+ readonly type: "array";
18250
+ readonly maxItems: 1000;
18251
+ readonly uniqueItems: true;
18252
+ readonly items: {
18253
+ readonly type: "string";
18254
+ readonly minLength: 1;
18255
+ readonly maxLength: 255;
18256
+ readonly pattern: "^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$";
18257
+ };
18258
+ };
18259
+ readonly actions: {
18260
+ readonly type: "array";
18261
+ readonly minItems: 1;
18262
+ readonly maxItems: 5;
18263
+ readonly uniqueItems: true;
18264
+ readonly items: {
18265
+ readonly enum: readonly ["membership.read", "membership.assign", "membership.update", "membership.revoke", "management.delegate"];
18266
+ };
18267
+ };
18268
+ readonly status: {
18269
+ readonly enum: readonly ["active", "revoked"];
18270
+ };
18271
+ readonly revision: {
18272
+ readonly type: "integer";
18273
+ readonly minimum: 1;
18274
+ };
18275
+ readonly reason: {
18276
+ readonly type: "string";
18277
+ readonly minLength: 1;
18278
+ readonly maxLength: 1000;
18279
+ };
18280
+ readonly createdBy: {
18281
+ readonly type: "string";
18282
+ readonly minLength: 1;
18283
+ };
18284
+ readonly updatedBy: {
18285
+ readonly type: "string";
18286
+ readonly minLength: 1;
18287
+ };
18288
+ readonly createdAt: {
18289
+ readonly anyOf: readonly [{
18290
+ readonly type: "string";
18291
+ readonly format: "date-time";
18292
+ }, {
18293
+ readonly type: "null";
18294
+ }];
18295
+ };
18296
+ readonly updatedAt: {
18297
+ readonly anyOf: readonly [{
18298
+ readonly type: "string";
18299
+ readonly format: "date-time";
18300
+ }, {
18301
+ readonly type: "null";
18302
+ }];
18303
+ };
18304
+ };
18305
+ };
18306
+ };
18307
+ readonly total: {
18308
+ readonly type: "integer";
18309
+ readonly minimum: 0;
18310
+ };
18311
+ readonly limit: {
18312
+ readonly type: "integer";
18313
+ readonly minimum: 1;
18314
+ readonly maximum: 100;
18315
+ };
18316
+ readonly offset: {
18317
+ readonly type: "integer";
18318
+ readonly minimum: 0;
18319
+ };
18320
+ };
18321
+ };
18322
+ readonly nativeAuthorizationMutationReceipt: {
18323
+ readonly $id: "openxiangda.native-authorization-mutation-receipt/v2";
18324
+ readonly type: "object";
18325
+ readonly additionalProperties: false;
18326
+ readonly required: readonly ["schemaVersion", "operationId", "operationKind", "requestDigest", "actorUserId", "reason", "result", "replayed", "createdAt"];
18327
+ readonly properties: {
18328
+ readonly schemaVersion: {
18329
+ readonly const: "openxiangda.native-authorization-mutation-receipt/v2";
18330
+ };
18331
+ readonly operationId: {
18332
+ readonly type: "string";
18333
+ readonly minLength: 1;
18334
+ };
18335
+ readonly operationKind: {
18336
+ readonly type: "string";
18337
+ readonly minLength: 1;
18338
+ };
18339
+ readonly requestDigest: {
18340
+ readonly type: "string";
18341
+ readonly pattern: "^[0-9a-f]{64}$";
18342
+ };
18343
+ readonly actorUserId: {
18344
+ readonly type: "string";
18345
+ readonly minLength: 1;
18346
+ };
18347
+ readonly reason: {
18348
+ readonly type: readonly ["string", "null"];
18349
+ readonly maxLength: 1000;
18350
+ };
18351
+ readonly result: {
18352
+ readonly type: "object";
18353
+ };
18354
+ readonly replayed: {
18355
+ readonly type: "boolean";
18356
+ };
18357
+ readonly createdAt: {
18358
+ readonly type: "string";
18359
+ readonly format: "date-time";
18360
+ };
18361
+ };
18362
+ };
17549
18363
  readonly nativeSuperAdminGrantPage: {
17550
18364
  readonly $id: "openxiangda.native-super-admin-grant-page/v2";
17551
18365
  readonly type: "object";