@harnessio/react-ccm-optimization-service-client 0.2.0 → 0.3.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 (103) hide show
  1. package/dist/ccm-optimization-service/src/services/hooks/useCreateAiGovernancePolicyMutation.d.ts +23 -0
  2. package/dist/ccm-optimization-service/src/services/hooks/useCreateAiGovernancePolicyMutation.js +14 -0
  3. package/dist/ccm-optimization-service/src/services/hooks/useDeleteAiGovernancePolicyMutation.d.ts +24 -0
  4. package/dist/ccm-optimization-service/src/services/hooks/useDeleteAiGovernancePolicyMutation.js +14 -0
  5. package/dist/ccm-optimization-service/src/services/hooks/useDryRunAiGovernancePolicyMutation.d.ts +29 -0
  6. package/dist/ccm-optimization-service/src/services/hooks/useDryRunAiGovernancePolicyMutation.js +14 -0
  7. package/dist/ccm-optimization-service/src/services/hooks/useGetAiGovernancePolicyOverviewQuery.d.ts +24 -0
  8. package/dist/ccm-optimization-service/src/services/hooks/useGetAiGovernancePolicyOverviewQuery.js +14 -0
  9. package/dist/ccm-optimization-service/src/services/hooks/useGetAiGovernancePolicyQuery.d.ts +24 -0
  10. package/dist/ccm-optimization-service/src/services/hooks/useGetAiGovernancePolicyQuery.js +14 -0
  11. package/dist/ccm-optimization-service/src/services/hooks/useListAiGovernanceOverrideRequestsMutation.d.ts +27 -0
  12. package/dist/ccm-optimization-service/src/services/hooks/useListAiGovernanceOverrideRequestsMutation.js +14 -0
  13. package/dist/ccm-optimization-service/src/services/hooks/useListAiGovernancePoliciesMutation.d.ts +23 -0
  14. package/dist/ccm-optimization-service/src/services/hooks/useListAiGovernancePoliciesMutation.js +14 -0
  15. package/dist/ccm-optimization-service/src/services/hooks/useListAiGovernancePolicySubjectsMutation.d.ts +27 -0
  16. package/dist/ccm-optimization-service/src/services/hooks/useListAiGovernancePolicySubjectsMutation.js +14 -0
  17. package/dist/ccm-optimization-service/src/services/hooks/useListMyAiGovernanceBudgetsQuery.d.ts +20 -0
  18. package/dist/ccm-optimization-service/src/services/hooks/useListMyAiGovernanceBudgetsQuery.js +14 -0
  19. package/dist/ccm-optimization-service/src/services/hooks/useListMyAiGovernanceOverrideRequestsMutation.d.ts +23 -0
  20. package/dist/ccm-optimization-service/src/services/hooks/useListMyAiGovernanceOverrideRequestsMutation.js +14 -0
  21. package/dist/ccm-optimization-service/src/services/hooks/useReviewAiGovernanceOverrideRequestsMutation.d.ts +27 -0
  22. package/dist/ccm-optimization-service/src/services/hooks/useReviewAiGovernanceOverrideRequestsMutation.js +14 -0
  23. package/dist/ccm-optimization-service/src/services/hooks/useUpdateAiGovernancePolicyMutation.d.ts +27 -0
  24. package/dist/ccm-optimization-service/src/services/hooks/useUpdateAiGovernancePolicyMutation.js +14 -0
  25. package/dist/ccm-optimization-service/src/services/index.d.ts +62 -0
  26. package/dist/ccm-optimization-service/src/services/index.js +12 -0
  27. package/dist/ccm-optimization-service/src/services/requestBodies/AiGovernancePolicyUpsertRequestRequestBody.d.ts +2 -0
  28. package/dist/ccm-optimization-service/src/services/requestBodies/AiGovernancePolicyUpsertRequestRequestBody.js +1 -0
  29. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceApprovalRequest.d.ts +67 -0
  30. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceApprovalRequest.js +1 -0
  31. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceApprovalRequestList.d.ts +20 -0
  32. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceApprovalRequestList.js +1 -0
  33. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceApprovalRequestListResponse.d.ts +4 -0
  34. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceApprovalRequestListResponse.js +1 -0
  35. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceApprovalRequestView.d.ts +7 -0
  36. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceApprovalRequestView.js +1 -0
  37. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceConnectorRef.d.ts +10 -0
  38. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceConnectorRef.js +4 -0
  39. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceDryRunResponse.d.ts +4 -0
  40. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceDryRunResponse.js +1 -0
  41. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceDryRunResult.d.ts +14 -0
  42. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceDryRunResult.js +1 -0
  43. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceDryRunRuleResult.d.ts +15 -0
  44. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceDryRunRuleResult.js +1 -0
  45. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceDryRunSubject.d.ts +28 -0
  46. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceDryRunSubject.js +4 -0
  47. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceMessageResponse.d.ts +8 -0
  48. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceMessageResponse.js +4 -0
  49. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceMyOverrideRequestsList.d.ts +6 -0
  50. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceMyOverrideRequestsList.js +1 -0
  51. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceMyOverrideRequestsListRequest.d.ts +47 -0
  52. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceMyOverrideRequestsListRequest.js +4 -0
  53. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceMyOverrideRequestsListResponse.d.ts +4 -0
  54. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceMyOverrideRequestsListResponse.js +1 -0
  55. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceOverrideRequestsListRequest.d.ts +51 -0
  56. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceOverrideRequestsListRequest.js +4 -0
  57. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicy.d.ts +53 -0
  58. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicy.js +1 -0
  59. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicyAuthoring.d.ts +18 -0
  60. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicyAuthoring.js +4 -0
  61. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicyDetails.d.ts +8 -0
  62. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicyDetails.js +1 -0
  63. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicyDetailsResponse.d.ts +4 -0
  64. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicyDetailsResponse.js +1 -0
  65. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicyDocument.d.ts +22 -0
  66. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicyDocument.js +4 -0
  67. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicyListItem.d.ts +21 -0
  68. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicyListItem.js +1 -0
  69. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicyListRequest.d.ts +33 -0
  70. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicyListRequest.js +4 -0
  71. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicyListResponse.d.ts +14 -0
  72. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicyListResponse.js +1 -0
  73. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicyOverviewMetrics.d.ts +42 -0
  74. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicyOverviewMetrics.js +1 -0
  75. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicyResponse.d.ts +4 -0
  76. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicyResponse.js +1 -0
  77. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicySubjectRow.d.ts +24 -0
  78. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicySubjectRow.js +1 -0
  79. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicySubjectsRequest.d.ts +39 -0
  80. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicySubjectsRequest.js +4 -0
  81. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicySubjectsResponse.d.ts +14 -0
  82. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicySubjectsResponse.js +1 -0
  83. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicyUpsertRequest.d.ts +11 -0
  84. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicyUpsertRequest.js +1 -0
  85. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicyUserHealth.d.ts +5 -0
  86. package/dist/ccm-optimization-service/src/services/schemas/AiGovernancePolicyUserHealth.js +4 -0
  87. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceReviewOverrideItem.d.ts +11 -0
  88. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceReviewOverrideItem.js +4 -0
  89. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceReviewOverrideOutcome.d.ts +10 -0
  90. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceReviewOverrideOutcome.js +1 -0
  91. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceReviewOverridesRequest.d.ts +4 -0
  92. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceReviewOverridesRequest.js +1 -0
  93. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceReviewOverridesResponse.d.ts +12 -0
  94. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceReviewOverridesResponse.js +1 -0
  95. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceReviewOverridesResult.d.ts +4 -0
  96. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceReviewOverridesResult.js +1 -0
  97. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceUserBudgetRow.d.ts +48 -0
  98. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceUserBudgetRow.js +1 -0
  99. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceUserBudgets.d.ts +12 -0
  100. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceUserBudgets.js +1 -0
  101. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceUserBudgetsResponse.d.ts +4 -0
  102. package/dist/ccm-optimization-service/src/services/schemas/AiGovernanceUserBudgetsResponse.js +1 -0
  103. package/package.json +1 -1
@@ -0,0 +1,53 @@
1
+ import type { AiGovernancePolicyDocument } from '../schemas/AiGovernancePolicyDocument';
2
+ export interface AiGovernancePolicy {
3
+ accountId?: string;
4
+ /**
5
+ * @format date-time
6
+ */
7
+ createdAt?: string;
8
+ createdBy?: string;
9
+ document?: AiGovernancePolicyDocument;
10
+ /**
11
+ * @format uuid
12
+ */
13
+ id?: string;
14
+ name?: string;
15
+ /**
16
+ * Count of pending cap-raise approval requests for this policy. Present on list responses only.
17
+ */
18
+ pendingUpgradeRequests?: number;
19
+ /**
20
+ * Original YAML upload when the policy was created or last updated via rawYaml. Empty when the JSON policy path was used; document is always authoritative.
21
+ */
22
+ rawYaml?: string;
23
+ /**
24
+ * Total current-period spend across governed subjects for budget-cap rules on this policy. Present on list responses only.
25
+ */
26
+ rolledUpSpend?: number;
27
+ /**
28
+ * Total number of unique governed subjects across budget-cap rules on this policy. Present on list responses only.
29
+ */
30
+ totalUsers?: number;
31
+ /**
32
+ * @format date-time
33
+ */
34
+ updatedAt?: string;
35
+ updatedBy?: string;
36
+ /**
37
+ * Counts of governed subjects by budget utilization band. Present on list responses only.
38
+ */
39
+ userHealth?: {
40
+ /**
41
+ * Subjects at or above the at-risk threshold but below budget
42
+ */
43
+ atRisk?: number;
44
+ /**
45
+ * Subjects below the at-risk spend threshold
46
+ */
47
+ good?: number;
48
+ /**
49
+ * Subjects at or above 100% of their effective budget ceiling
50
+ */
51
+ overBudget?: number;
52
+ };
53
+ }
@@ -0,0 +1,18 @@
1
+ export interface AiGovernancePolicyAuthoring {
2
+ /**
3
+ * Lowercase slug policy name
4
+ */
5
+ name: string;
6
+ /**
7
+ * Governance rules with flat type-specific fields (same shape as YAML rules)
8
+ */
9
+ rules: Array<{
10
+ [key: string]: any;
11
+ }>;
12
+ /**
13
+ * Policy-level subject selectors
14
+ */
15
+ subjects: {
16
+ [key: string]: any;
17
+ };
18
+ }
@@ -0,0 +1,4 @@
1
+ /* eslint-disable */
2
+ // This code is autogenerated using @harnessio/oats-cli.
3
+ // Please do not modify this code directly.
4
+ export {};
@@ -0,0 +1,8 @@
1
+ import type { AiGovernancePolicyOverviewMetrics } from '../schemas/AiGovernancePolicyOverviewMetrics';
2
+ export interface AiGovernancePolicyDetails extends AiGovernancePolicyOverviewMetrics {
3
+ /**
4
+ * @format uuid
5
+ */
6
+ policyId?: string;
7
+ policyName?: string;
8
+ }
@@ -0,0 +1,4 @@
1
+ import type { AiGovernancePolicyDetails } from '../schemas/AiGovernancePolicyDetails';
2
+ export interface AiGovernancePolicyDetailsResponse {
3
+ response: AiGovernancePolicyDetails;
4
+ }
@@ -0,0 +1,22 @@
1
+ export interface AiGovernancePolicyDocument {
2
+ /**
3
+ * Persisted rules with platform-assigned ruleIds
4
+ */
5
+ rules?: Array<{
6
+ connectors?: Array<{
7
+ [key: string]: any;
8
+ }>;
9
+ frequency?: string;
10
+ /**
11
+ * @format uuid
12
+ */
13
+ ruleId?: string;
14
+ type?: string;
15
+ }>;
16
+ /**
17
+ * Policy-level subject selectors
18
+ */
19
+ subjects?: {
20
+ [key: string]: any;
21
+ };
22
+ }
@@ -0,0 +1,4 @@
1
+ /* eslint-disable */
2
+ // This code is autogenerated using @harnessio/oats-cli.
3
+ // Please do not modify this code directly.
4
+ export {};
@@ -0,0 +1,21 @@
1
+ import type { AiGovernancePolicyDocument } from '../schemas/AiGovernancePolicyDocument';
2
+ import type { AiGovernancePolicyOverviewMetrics } from '../schemas/AiGovernancePolicyOverviewMetrics';
3
+ export interface AiGovernancePolicyListItem extends AiGovernancePolicyOverviewMetrics {
4
+ accountId?: string;
5
+ /**
6
+ * @format date-time
7
+ */
8
+ createdAt?: string;
9
+ createdBy?: string;
10
+ document?: AiGovernancePolicyDocument;
11
+ /**
12
+ * @format uuid
13
+ */
14
+ id?: string;
15
+ name?: string;
16
+ /**
17
+ * @format date-time
18
+ */
19
+ updatedAt?: string;
20
+ updatedBy?: string;
21
+ }
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Pagination request for listing governance policies
3
+ */
4
+ export interface AiGovernancePolicyListRequest {
5
+ filters?: Array<{
6
+ [key: string]: any;
7
+ }>;
8
+ /**
9
+ * Number of records per page (max 100)
10
+ * @default 10
11
+ * @example 10
12
+ */
13
+ limit?: number;
14
+ /**
15
+ * Page number (1-indexed)
16
+ * @default 1
17
+ * @example 1
18
+ */
19
+ page?: number;
20
+ /**
21
+ * Sorting options
22
+ */
23
+ sort?: {
24
+ /**
25
+ * @example "name"
26
+ */
27
+ field?: 'created_at' | 'name' | 'updated_at';
28
+ /**
29
+ * @example "DESC"
30
+ */
31
+ type?: 'ASC' | 'DESC';
32
+ };
33
+ }
@@ -0,0 +1,4 @@
1
+ /* eslint-disable */
2
+ // This code is autogenerated using @harnessio/oats-cli.
3
+ // Please do not modify this code directly.
4
+ export {};
@@ -0,0 +1,14 @@
1
+ import type { AiGovernancePolicyListItem } from '../schemas/AiGovernancePolicyListItem';
2
+ export interface AiGovernancePolicyListResponse {
3
+ response: {
4
+ items: AiGovernancePolicyListItem[];
5
+ /**
6
+ * Total number of pages
7
+ */
8
+ pages: number;
9
+ /**
10
+ * Total number of policies matching the criteria
11
+ */
12
+ total: number;
13
+ };
14
+ }
@@ -0,0 +1,42 @@
1
+ import type { AiGovernancePolicyUserHealth } from '../schemas/AiGovernancePolicyUserHealth';
2
+ /**
3
+ * Overview metrics shared by policy list items and the single-policy overview response. Spend fields are populated only after dry-run or reconcile writes the per-policy stats cache.
4
+ */
5
+ export interface AiGovernancePolicyOverviewMetrics {
6
+ /**
7
+ * Null until dry-run or reconcile has seeded the per-policy stats cache for the current period
8
+ */
9
+ cumulativeSpend?: number | null;
10
+ pendingRequestsCount: number;
11
+ period?: {
12
+ period?: string;
13
+ range?: {
14
+ /**
15
+ * @format date-time
16
+ */
17
+ end?: string;
18
+ /**
19
+ * @format date-time
20
+ */
21
+ start?: string;
22
+ };
23
+ };
24
+ /**
25
+ * 1-indexed day within the current budget period
26
+ */
27
+ periodDay: number;
28
+ /**
29
+ * Null until dry-run or reconcile has seeded the per-policy stats cache for the current period
30
+ */
31
+ spendPercent?: number | null;
32
+ /**
33
+ * Total effective budget ceiling for the current policy period across all budget-cap rules
34
+ */
35
+ totalPeriodBudget: number;
36
+ totalSubjects: number;
37
+ /**
38
+ * Null until dry-run or reconcile has seeded the per-policy stats cache for the current period
39
+ */
40
+ userHealth?: AiGovernancePolicyUserHealth | null;
41
+ warnings?: string[];
42
+ }
@@ -0,0 +1,4 @@
1
+ import type { AiGovernancePolicy } from '../schemas/AiGovernancePolicy';
2
+ export interface AiGovernancePolicyResponse {
3
+ response: AiGovernancePolicy;
4
+ }
@@ -0,0 +1,24 @@
1
+ import type { AiGovernanceApprovalRequestView } from '../schemas/AiGovernanceApprovalRequestView';
2
+ export interface AiGovernancePolicySubjectRow {
3
+ /**
4
+ * Effective budget ceiling after active overrides
5
+ */
6
+ budget: number;
7
+ /**
8
+ * Subject email
9
+ */
10
+ email: string;
11
+ pendingRequest?: AiGovernanceApprovalRequestView;
12
+ /**
13
+ * Current-period spend for the primary budget-cap rule
14
+ */
15
+ spendAmount: number;
16
+ /**
17
+ * Spend as a percentage of effective budget
18
+ */
19
+ spendPercent: number;
20
+ /**
21
+ * Budget utilization band for the subject
22
+ */
23
+ status: 'atRisk' | 'good' | 'overBudget';
24
+ }
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Pagination and filter request for listing governed subjects on a policy
3
+ */
4
+ export interface AiGovernancePolicySubjectsRequest {
5
+ /**
6
+ * all returns every mapped subject; pending_requests returns only subjects with an open budget raise request
7
+ * @default "all"
8
+ */
9
+ filter?: 'all' | 'pending_requests';
10
+ /**
11
+ * Number of records per page (max 100)
12
+ * @default 10
13
+ * @example 10
14
+ */
15
+ limit?: number;
16
+ /**
17
+ * Page number (1-indexed)
18
+ * @default 1
19
+ * @example 1
20
+ */
21
+ page?: number;
22
+ /**
23
+ * Optional search string matched against subject email
24
+ */
25
+ query?: string;
26
+ /**
27
+ * Sorting options
28
+ */
29
+ sort?: {
30
+ /**
31
+ * @example "email"
32
+ */
33
+ field?: 'email';
34
+ /**
35
+ * @example "ASC"
36
+ */
37
+ type?: 'ASC' | 'DESC';
38
+ };
39
+ }
@@ -0,0 +1,4 @@
1
+ /* eslint-disable */
2
+ // This code is autogenerated using @harnessio/oats-cli.
3
+ // Please do not modify this code directly.
4
+ export {};
@@ -0,0 +1,14 @@
1
+ import type { AiGovernancePolicySubjectRow } from '../schemas/AiGovernancePolicySubjectRow';
2
+ export interface AiGovernancePolicySubjectsResponse {
3
+ response: {
4
+ items: AiGovernancePolicySubjectRow[];
5
+ /**
6
+ * Total number of pages
7
+ */
8
+ pages: number;
9
+ /**
10
+ * Total number of mapped subjects matching the filter
11
+ */
12
+ total: number;
13
+ };
14
+ }
@@ -0,0 +1,11 @@
1
+ import type { AiGovernancePolicyAuthoring } from '../schemas/AiGovernancePolicyAuthoring';
2
+ /**
3
+ * Provide either rawYaml or policy (not both required in schema, but one must be supplied at runtime).
4
+ */
5
+ export interface AiGovernancePolicyUpsertRequest {
6
+ policy?: AiGovernancePolicyAuthoring;
7
+ /**
8
+ * Full governance policy YAML document with exactly one policy entry containing subjects and rules
9
+ */
10
+ rawYaml?: string;
11
+ }
@@ -0,0 +1,5 @@
1
+ export interface AiGovernancePolicyUserHealth {
2
+ atRisk?: number;
3
+ good?: number;
4
+ overBudget?: number;
5
+ }
@@ -0,0 +1,4 @@
1
+ /* eslint-disable */
2
+ // This code is autogenerated using @harnessio/oats-cli.
3
+ // Please do not modify this code directly.
4
+ export {};
@@ -0,0 +1,11 @@
1
+ export interface AiGovernanceReviewOverrideItem {
2
+ action: 'approve' | 'reject';
3
+ /**
4
+ * Optional approved ceiling in USD dollars when action is approve; the caller must be authorized for this amount on the pending tier
5
+ */
6
+ approved_amount?: number;
7
+ /**
8
+ * @format uuid
9
+ */
10
+ request_id: string;
11
+ }
@@ -0,0 +1,4 @@
1
+ /* eslint-disable */
2
+ // This code is autogenerated using @harnessio/oats-cli.
3
+ // Please do not modify this code directly.
4
+ export {};
@@ -0,0 +1,10 @@
1
+ import type { AiGovernanceApprovalRequest } from '../schemas/AiGovernanceApprovalRequest';
2
+ export interface AiGovernanceReviewOverrideOutcome {
3
+ message?: string;
4
+ request?: AiGovernanceApprovalRequest;
5
+ /**
6
+ * @format uuid
7
+ */
8
+ requestId: string;
9
+ success: boolean;
10
+ }
@@ -0,0 +1,4 @@
1
+ import type { AiGovernanceReviewOverrideItem } from '../schemas/AiGovernanceReviewOverrideItem';
2
+ export interface AiGovernanceReviewOverridesRequest {
3
+ items: AiGovernanceReviewOverrideItem[];
4
+ }
@@ -0,0 +1,12 @@
1
+ import type { AiGovernanceReviewOverridesResult } from '../schemas/AiGovernanceReviewOverridesResult';
2
+ export interface AiGovernanceReviewOverridesResponse {
3
+ code?: string;
4
+ errors?: string[];
5
+ response?: AiGovernanceReviewOverridesResult;
6
+ success?: boolean;
7
+ /**
8
+ * Unix milliseconds timestamp
9
+ * @format int64
10
+ */
11
+ ts?: number;
12
+ }
@@ -0,0 +1,4 @@
1
+ import type { AiGovernanceReviewOverrideOutcome } from '../schemas/AiGovernanceReviewOverrideOutcome';
2
+ export interface AiGovernanceReviewOverridesResult {
3
+ results: AiGovernanceReviewOverrideOutcome[];
4
+ }
@@ -0,0 +1,48 @@
1
+ import type { AiGovernanceConnectorRef } from '../schemas/AiGovernanceConnectorRef';
2
+ export interface AiGovernanceUserBudgetRow {
3
+ /**
4
+ * Budget ceiling from policy YAML, in USD dollars
5
+ */
6
+ authoredAmount: number;
7
+ authoredConnectors: AiGovernanceConnectorRef[];
8
+ /**
9
+ * Effective ceiling after active overrides (same as authored until Phase 1b overrides land)
10
+ */
11
+ effectiveAmount: number;
12
+ mode: 'per-subject' | 'pooled';
13
+ period: 'custom' | 'monthly' | 'quarterly' | 'weekly';
14
+ /**
15
+ * Omitted when the budget period is unsupported for spend lookup
16
+ * @format date-time
17
+ */
18
+ periodEnd?: string;
19
+ /**
20
+ * Omitted when the budget period is unsupported for spend lookup
21
+ * @format date-time
22
+ */
23
+ periodStart?: string;
24
+ /**
25
+ * @format uuid
26
+ */
27
+ policyId: string;
28
+ policyName: string;
29
+ resolvedConnectors: AiGovernanceConnectorRef[];
30
+ /**
31
+ * @format uuid
32
+ */
33
+ ruleId: string;
34
+ /**
35
+ * Current-period spend in USD cents from attribution
36
+ * @format int64
37
+ */
38
+ spendCents: number;
39
+ /**
40
+ * Spend as a percentage of the effective ceiling
41
+ */
42
+ spendPercent?: number;
43
+ /**
44
+ * Latest governance enforcement state when a record exists
45
+ */
46
+ state?: 'enforced' | 'normal' | 'reverted';
47
+ warnings?: string[];
48
+ }
@@ -0,0 +1,12 @@
1
+ import type { AiGovernanceUserBudgetRow } from '../schemas/AiGovernanceUserBudgetRow';
2
+ export interface AiGovernanceUserBudgets {
3
+ budgets: AiGovernanceUserBudgetRow[];
4
+ /**
5
+ * Canonical subject identifier for the logged-in user (typically email when available)
6
+ */
7
+ subjectId: string;
8
+ /**
9
+ * Account-level warnings (e.g. policies skipped because usage-derived subjects are not supported for budget visibility)
10
+ */
11
+ warnings?: string[];
12
+ }
@@ -0,0 +1,4 @@
1
+ import type { AiGovernanceUserBudgets } from '../schemas/AiGovernanceUserBudgets';
2
+ export interface AiGovernanceUserBudgetsResponse {
3
+ response: AiGovernanceUserBudgets;
4
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@harnessio/react-ccm-optimization-service-client",
3
- "version": "0.2.0",
3
+ "version": "0.3.0",
4
4
  "description": "Harness CCM Optimization Service APIs integrated with react hooks",
5
5
  "author": "Harness Inc",
6
6
  "license": "MIT",