@robosystems/client 0.5.6 → 0.5.7

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.
@@ -150,7 +150,9 @@ export type ArtifactResponse = {
150
150
  kind: 'metric';
151
151
  } & MetricMechanics) | ({
152
152
  kind: 'rollforward';
153
- } & RollforwardMechanics);
153
+ } & RollforwardMechanics) | ({
154
+ kind: 'forecast';
155
+ } & ForecastMechanics);
154
156
  };
155
157
  /**
156
158
  * AssociationResponse
@@ -1192,6 +1194,81 @@ export type ClosePeriodResponse = {
1192
1194
  */
1193
1195
  evaluated_structure_ids?: Array<string>;
1194
1196
  };
1197
+ /**
1198
+ * ComputeForecastRequest
1199
+ *
1200
+ * Request body for the ``compute-forecast`` operation.
1201
+ *
1202
+ * Walks the scenario's driver cascade month-by-month forward from the
1203
+ * forecast block's ``base_period``: lever-driven Derive rules in
1204
+ * dependency order, carry-forward for unmodeled IS lines, calc-DAG
1205
+ * subtotals — upserting one scenario IS FactSet (+ a working-capital BS
1206
+ * set) per forward month, all keyed by the forecast block's
1207
+ * ``scenario_id``. Re-running replaces each month's values (the
1208
+ * compute-metrics drift semantics). Deterministic and non-AI — no
1209
+ * credits consumed.
1210
+ */
1211
+ export type ComputeForecastRequest = {
1212
+ /**
1213
+ * Structure Id
1214
+ *
1215
+ * Forecast block structure (block_type='forecast') to compute.
1216
+ */
1217
+ structure_id: string;
1218
+ /**
1219
+ * Months
1220
+ *
1221
+ * Forward months to compute — defaults to the block's full horizon_months; must not exceed it (lever assertions don't extend past the horizon).
1222
+ */
1223
+ months?: number | null;
1224
+ /**
1225
+ * Entity Id
1226
+ *
1227
+ * Entity to compute for. Defaults to the lever FactSet's entity (the entity the scenario was authored against).
1228
+ */
1229
+ entity_id?: string | null;
1230
+ };
1231
+ /**
1232
+ * ComputeForecastResponse
1233
+ *
1234
+ * Response for the ``compute-forecast`` operation.
1235
+ */
1236
+ export type ComputeForecastResponse = {
1237
+ /**
1238
+ * Structure Id
1239
+ */
1240
+ structure_id: string;
1241
+ /**
1242
+ * Scenario Id
1243
+ *
1244
+ * The scenario key every emitted FactSet carries — the forecast block's own structure id.
1245
+ */
1246
+ scenario_id: string;
1247
+ /**
1248
+ * Entity Id
1249
+ */
1250
+ entity_id: string;
1251
+ /**
1252
+ * Base Period
1253
+ *
1254
+ * Seed month the walk projected from.
1255
+ */
1256
+ base_period: string;
1257
+ /**
1258
+ * Months
1259
+ *
1260
+ * Forward months requested.
1261
+ */
1262
+ months: number;
1263
+ /**
1264
+ * Months Computed
1265
+ */
1266
+ months_computed?: Array<ForecastMonthLite>;
1267
+ /**
1268
+ * Skipped
1269
+ */
1270
+ skipped?: Array<SkippedForecastLite>;
1271
+ };
1195
1272
  /**
1196
1273
  * ComputeMetricsRequest
1197
1274
  *
@@ -1229,6 +1306,12 @@ export type ComputeMetricsRequest = {
1229
1306
  * Entity to compute for. Defaults to the graph's earliest-created entity (the primary entity for single-entity graphs).
1230
1307
  */
1231
1308
  entity_id?: string | null;
1309
+ /**
1310
+ * Scenario Id
1311
+ *
1312
+ * Compute on a scenario slice: operands bind that scenario's facts (actuals as the fallback across the seam) and the standing metric set is stamped with the scenario. None (the default) computes actuals only. Pass a forecast block's structure id after compute-forecast to extend the metric series into its forward months.
1313
+ */
1314
+ scenario_id?: string | null;
1232
1315
  };
1233
1316
  /**
1234
1317
  * ComputeMetricsResponse
@@ -2013,6 +2096,54 @@ export type CreateEventHandlerRequest = {
2013
2096
  [key: string]: unknown;
2014
2097
  };
2015
2098
  };
2099
+ /**
2100
+ * CreateForecastRequest
2101
+ *
2102
+ * Create a forecast block — the authored scenario container.
2103
+ *
2104
+ * ``base_period`` defaults to the fiscal calendar's
2105
+ * ``closed_through_period`` (else the newest actual report month) —
2106
+ * the walk projects forward from the last closed actuals. The resolved
2107
+ * value is stored in the mechanics so recompute is deterministic.
2108
+ */
2109
+ export type CreateForecastRequest = {
2110
+ /**
2111
+ * Name
2112
+ *
2113
+ * Human-readable scenario name.
2114
+ */
2115
+ name: string;
2116
+ /**
2117
+ * Scenario Kind
2118
+ *
2119
+ * What kind of scenario this is — metadata for display/filtering, not machinery. All kinds compute identically.
2120
+ */
2121
+ scenario_kind?: 'budget' | 'forecast' | 'projection';
2122
+ /**
2123
+ * Horizon Months
2124
+ *
2125
+ * Forward months to project past the base period.
2126
+ */
2127
+ horizon_months?: number;
2128
+ /**
2129
+ * Base Period
2130
+ *
2131
+ * Seed month (``YYYY-MM``) the walk projects forward from. Defaults to the fiscal calendar's closed-through period, else the newest actual report month. Resolved and stored at create time.
2132
+ */
2133
+ base_period?: string | null;
2134
+ /**
2135
+ * Levers
2136
+ *
2137
+ * Lever assertions — at least one.
2138
+ */
2139
+ levers: Array<LeverAssertionRequest>;
2140
+ /**
2141
+ * Entity Id
2142
+ *
2143
+ * Entity the scenario belongs to. Defaults to the graph's earliest-created entity (single-entity convention).
2144
+ */
2145
+ entity_id?: string | null;
2146
+ };
2016
2147
  /**
2017
2148
  * CreateGraphRequest
2018
2149
  *
@@ -2069,6 +2200,8 @@ export type CreateInformationBlockRequest = ({
2069
2200
  } & CreateScheduleArm) | ({
2070
2201
  block_type: 'rollforward';
2071
2202
  } & CreateRollforwardArm) | ({
2203
+ block_type: 'forecast';
2204
+ } & CreateForecastArm) | ({
2072
2205
  block_type: 'balance_sheet' | 'cash_flow_statement' | 'comprehensive_income' | 'equity_statement' | 'income_statement' | 'metric' | 'regulatory_disclosure';
2073
2206
  } & CreateLegacyArm);
2074
2207
  /**
@@ -3055,6 +3188,23 @@ export type DeleteFileOp = {
3055
3188
  */
3056
3189
  cascade?: boolean;
3057
3190
  };
3191
+ /**
3192
+ * DeleteForecastRequest
3193
+ *
3194
+ * Delete a forecast block.
3195
+ *
3196
+ * Removes the scenario's entire parallel universe: the lever FactSet
3197
+ * AND every computed scenario FactSet (the forward statement/metric
3198
+ * months keyed by this scenario). Actuals are never touched.
3199
+ */
3200
+ export type DeleteForecastRequest = {
3201
+ /**
3202
+ * Structure Id
3203
+ *
3204
+ * Structure ID of the forecast block.
3205
+ */
3206
+ structure_id: string;
3207
+ };
3058
3208
  /**
3059
3209
  * DeleteGraphOp
3060
3210
  *
@@ -3100,6 +3250,8 @@ export type DeleteInformationBlockRequest = ({
3100
3250
  } & DeleteScheduleArm) | ({
3101
3251
  block_type: 'rollforward';
3102
3252
  } & DeleteRollforwardArm) | ({
3253
+ block_type: 'forecast';
3254
+ } & DeleteForecastArm) | ({
3103
3255
  block_type: 'balance_sheet' | 'cash_flow_statement' | 'comprehensive_income' | 'equity_statement' | 'income_statement' | 'metric' | 'regulatory_disclosure';
3104
3256
  } & DeleteLegacyArm);
3105
3257
  /**
@@ -4465,7 +4617,7 @@ export type FactSetLite = {
4465
4617
  /**
4466
4618
  * Factset Type
4467
4619
  *
4468
- * 'report' | 'schedule' | 'custom' | 'disclosure'. Enum closure enforced by the ``public.fact_sets`` CHECK constraint.
4620
+ * 'report' | 'schedule' | 'custom' | 'disclosure' | 'metric'. Enum closure enforced by the ``public.fact_sets`` CHECK constraint.
4469
4621
  */
4470
4622
  factset_type: string;
4471
4623
  /**
@@ -4478,6 +4630,12 @@ export type FactSetLite = {
4478
4630
  * Back-pointer to the ``reports`` table while ``report_id`` still lives on facts. Drops out once the retirement migration lands.
4479
4631
  */
4480
4632
  report_id?: string | null;
4633
+ /**
4634
+ * Scenario Id
4635
+ *
4636
+ * Scenario axis (the forecast engine). NULL = actuals; non-NULL names the owning forecast block whose parallel universe this set belongs to.
4637
+ */
4638
+ scenario_id?: string | null;
4481
4639
  /**
4482
4640
  * Provenance
4483
4641
  *
@@ -4795,6 +4953,96 @@ export type FiscalPeriodSummary = {
4795
4953
  */
4796
4954
  closed_at?: string | null;
4797
4955
  };
4956
+ /**
4957
+ * ForecastMechanics
4958
+ *
4959
+ * Authored scenario container for ``block_type='forecast'`` (FP&A F-1).
4960
+ *
4961
+ * The block IS the scenario: its structure id is the ``scenario_id``
4962
+ * every derived forward FactSet carries (NULL = actuals). The authored
4963
+ * surface is exactly this — scenario identity, horizon, base period,
4964
+ * lever assertions; everything downstream is derived by
4965
+ * ``compute-forecast`` (levers → driven rs-gaap anchors via the
4966
+ * rs-driver Derive rules → carry-forward for unmodeled IS lines →
4967
+ * calc-DAG subtotals), landing in the EXISTING statement/metric block
4968
+ * types stamped with the scenario. Reads directly from the typed
4969
+ * ``structures.artifact_mechanics`` JSONB column.
4970
+ */
4971
+ export type ForecastMechanics = {
4972
+ /**
4973
+ * Kind
4974
+ */
4975
+ kind?: 'forecast';
4976
+ /**
4977
+ * Scenario Kind
4978
+ *
4979
+ * Scenario kind — display/filter metadata, not machinery.
4980
+ */
4981
+ scenario_kind?: 'budget' | 'forecast' | 'projection';
4982
+ /**
4983
+ * Horizon Months
4984
+ *
4985
+ * Forward months projected past the base period.
4986
+ */
4987
+ horizon_months: number;
4988
+ /**
4989
+ * Base Period
4990
+ *
4991
+ * Seed month (``YYYY-MM``) the walk projects forward from — resolved at create time (request → fiscal calendar closed-through → newest actual report month) and stored so recompute is deterministic.
4992
+ */
4993
+ base_period: string;
4994
+ /**
4995
+ * Levers
4996
+ *
4997
+ * Expanded lever assertions (authoring order).
4998
+ */
4999
+ levers: Array<LeverAssertionLite>;
5000
+ /**
5001
+ * Computed Months
5002
+ *
5003
+ * Number of forward months with computed scenario FactSets. Runtime state filled at envelope-build time — 0 until the first compute-forecast run.
5004
+ */
5005
+ computed_months?: number;
5006
+ };
5007
+ /**
5008
+ * ForecastMonthLite
5009
+ *
5010
+ * One computed forward month in a ``compute-forecast`` response.
5011
+ */
5012
+ export type ForecastMonthLite = {
5013
+ /**
5014
+ * Period
5015
+ *
5016
+ * Month key (``YYYY-MM``).
5017
+ */
5018
+ period: string;
5019
+ /**
5020
+ * Period Start
5021
+ */
5022
+ period_start: string;
5023
+ /**
5024
+ * Period End
5025
+ */
5026
+ period_end: string;
5027
+ /**
5028
+ * Income Statement Fact Set Id
5029
+ *
5030
+ * Scenario IS FactSet upserted for the month.
5031
+ */
5032
+ income_statement_fact_set_id?: string | null;
5033
+ /**
5034
+ * Balance Sheet Fact Set Id
5035
+ *
5036
+ * Scenario BS FactSet upserted for the month (working-capital instants only in F-1 — the full BS roll is a later phase).
5037
+ */
5038
+ balance_sheet_fact_set_id?: string | null;
5039
+ /**
5040
+ * Computed Count
5041
+ *
5042
+ * Number of facts emitted for the month across both sets.
5043
+ */
5044
+ computed_count?: number;
5045
+ };
4798
5046
  /**
4799
5047
  * ForgetOp
4800
5048
  *
@@ -6605,6 +6853,85 @@ export type LedgerEntityResponse = {
6605
6853
  */
6606
6854
  updated_at?: string | null;
6607
6855
  };
6856
+ /**
6857
+ * LeverAssertionLite
6858
+ *
6859
+ * One lever's persisted assertion inside ``ForecastMechanics``.
6860
+ *
6861
+ * The create handler expands the wire-level assertion (uniform ``value``
6862
+ * + per-month overrides) into the explicit ``values_by_period`` map so
6863
+ * compute never interpolates — every asserted month is stated. The
6864
+ * values are duplicated as authored facts in the scenario's lever
6865
+ * FactSet (rules for mechanics, **facts for values** — the facts are
6866
+ * what ``compute-forecast`` binds); this mechanics copy is the
6867
+ * operator-legible round-trip shape.
6868
+ */
6869
+ export type LeverAssertionLite = {
6870
+ /**
6871
+ * Qname
6872
+ *
6873
+ * rs-driver lever element qname.
6874
+ */
6875
+ qname: string;
6876
+ /**
6877
+ * Element Id
6878
+ *
6879
+ * Resolved tenant element id.
6880
+ */
6881
+ element_id: string;
6882
+ /**
6883
+ * Item Type
6884
+ *
6885
+ * Format family from the catalog (percent | days | ...).
6886
+ */
6887
+ item_type?: string | null;
6888
+ /**
6889
+ * Values By Period
6890
+ *
6891
+ * Expanded per-month assertions keyed by ``YYYY-MM``.
6892
+ */
6893
+ values_by_period: {
6894
+ [key: string]: number;
6895
+ };
6896
+ };
6897
+ /**
6898
+ * LeverAssertionRequest
6899
+ *
6900
+ * One lever's asserted values for the scenario.
6901
+ *
6902
+ * ``qname`` must resolve to an ``rs-driver:*`` catalog element (the
6903
+ * create handler rejects anything else). Value conventions follow the
6904
+ * catalog: percent levers are decimals per month (0.03 = 3%/month),
6905
+ * days levers are day counts.
6906
+ *
6907
+ * ``value`` is a uniform fill across the whole horizon;
6908
+ * ``values_by_period`` overrides individual months (``"YYYY-MM"``
6909
+ * keys). At least one of the two must be provided. Months covered by
6910
+ * neither carry no assertion — the lever's rule is inactive for that
6911
+ * month and its target falls to the engine's carry-forward default.
6912
+ */
6913
+ export type LeverAssertionRequest = {
6914
+ /**
6915
+ * Qname
6916
+ *
6917
+ * QName of the rs-driver lever element (e.g. ``rs-driver:RevenueGrowthRate``).
6918
+ */
6919
+ qname: string;
6920
+ /**
6921
+ * Value
6922
+ *
6923
+ * Uniform value asserted for every month of the horizon.
6924
+ */
6925
+ value?: number | null;
6926
+ /**
6927
+ * Values By Period
6928
+ *
6929
+ * Per-month overrides keyed by ``YYYY-MM``. Wins over ``value`` for the months it names.
6930
+ */
6931
+ values_by_period?: {
6932
+ [key: string]: number;
6933
+ } | null;
6934
+ };
6608
6935
  /**
6609
6936
  * LineItemMetadataPredicate
6610
6937
  *
@@ -7502,6 +7829,51 @@ export type OperationEnvelopeClosePeriodResponse = {
7502
7829
  */
7503
7830
  idempotentReplay?: boolean;
7504
7831
  };
7832
+ /**
7833
+ * OperationEnvelope[ComputeForecastResponse]
7834
+ */
7835
+ export type OperationEnvelopeComputeForecastResponse = {
7836
+ /**
7837
+ * Operation
7838
+ *
7839
+ * Kebab-case operation name
7840
+ */
7841
+ operation: string;
7842
+ /**
7843
+ * Operationid
7844
+ *
7845
+ * op_-prefixed ULID for audit and SSE correlation
7846
+ */
7847
+ operationId: string;
7848
+ /**
7849
+ * Status
7850
+ *
7851
+ * Operation lifecycle state
7852
+ */
7853
+ status: 'completed' | 'pending' | 'failed';
7854
+ /**
7855
+ * Command-specific result payload
7856
+ */
7857
+ result?: ComputeForecastResponse | null;
7858
+ /**
7859
+ * At
7860
+ *
7861
+ * ISO-8601 UTC timestamp
7862
+ */
7863
+ at: string;
7864
+ /**
7865
+ * Createdby
7866
+ *
7867
+ * User ID that initiated the operation (null for legacy callers)
7868
+ */
7869
+ createdBy?: string | null;
7870
+ /**
7871
+ * Idempotentreplay
7872
+ *
7873
+ * True when this envelope came from the idempotency cache — the underlying command did not execute again. False on fresh executions.
7874
+ */
7875
+ idempotentReplay?: boolean;
7876
+ };
7505
7877
  /**
7506
7878
  * OperationEnvelope[ComputeMetricsResponse]
7507
7879
  */
@@ -11804,6 +12176,38 @@ export type ShareResultItem = {
11804
12176
  */
11805
12177
  fact_count?: number;
11806
12178
  };
12179
+ /**
12180
+ * SkippedForecastLite
12181
+ *
12182
+ * One rule/month soft-skip in a ``compute-forecast`` response.
12183
+ *
12184
+ * A skipped rule never aborts the walk — its target falls back to the
12185
+ * carry-forward value for that month (when a prior value exists).
12186
+ */
12187
+ export type SkippedForecastLite = {
12188
+ /**
12189
+ * Rule Id
12190
+ */
12191
+ rule_id?: string | null;
12192
+ /**
12193
+ * Element Qname
12194
+ */
12195
+ element_qname?: string | null;
12196
+ /**
12197
+ * Period
12198
+ *
12199
+ * Month key (``YYYY-MM``) of the skip.
12200
+ */
12201
+ period: string;
12202
+ /**
12203
+ * Reason
12204
+ */
12205
+ reason: string;
12206
+ /**
12207
+ * Missing
12208
+ */
12209
+ missing?: Array<string>;
12210
+ };
11807
12211
  /**
11808
12212
  * SkippedMetricLite
11809
12213
  *
@@ -13477,6 +13881,47 @@ export type UpdateEventHandlerRequest = {
13477
13881
  [key: string]: unknown;
13478
13882
  };
13479
13883
  };
13884
+ /**
13885
+ * UpdateForecastRequest
13886
+ *
13887
+ * Update a forecast block in place.
13888
+ *
13889
+ * Mutable: name, scenario_kind, horizon_months, base_period, levers.
13890
+ * ``levers`` is a **full replace** when provided (partial lever edits
13891
+ * would make the asserted set ambiguous). Updating does NOT recompute —
13892
+ * previously computed scenario months go stale until the next
13893
+ * ``compute-forecast`` run (the compute-metrics drift semantics).
13894
+ */
13895
+ export type UpdateForecastRequest = {
13896
+ /**
13897
+ * Structure Id
13898
+ *
13899
+ * Structure ID of the forecast block.
13900
+ */
13901
+ structure_id: string;
13902
+ /**
13903
+ * Name
13904
+ */
13905
+ name?: string | null;
13906
+ /**
13907
+ * Scenario Kind
13908
+ */
13909
+ scenario_kind?: 'budget' | 'forecast' | 'projection' | null;
13910
+ /**
13911
+ * Horizon Months
13912
+ */
13913
+ horizon_months?: number | null;
13914
+ /**
13915
+ * Base Period
13916
+ */
13917
+ base_period?: string | null;
13918
+ /**
13919
+ * Levers
13920
+ *
13921
+ * Full replacement of the lever set when provided.
13922
+ */
13923
+ levers?: Array<LeverAssertionRequest> | null;
13924
+ };
13480
13925
  /**
13481
13926
  * UpdateInformationBlockRequest
13482
13927
  *
@@ -13491,6 +13936,8 @@ export type UpdateInformationBlockRequest = ({
13491
13936
  } & UpdateScheduleArm) | ({
13492
13937
  block_type: 'rollforward';
13493
13938
  } & UpdateRollforwardArm) | ({
13939
+ block_type: 'forecast';
13940
+ } & UpdateForecastArm) | ({
13494
13941
  block_type: 'balance_sheet' | 'cash_flow_statement' | 'comprehensive_income' | 'equity_statement' | 'income_statement' | 'metric' | 'regulatory_disclosure';
13495
13942
  } & UpdateLegacyArm);
13496
13943
  /**
@@ -14279,6 +14726,28 @@ export type ViewProjections = {
14279
14726
  rendering?: RenderingLite | null;
14280
14727
  chart?: ChartLite | null;
14281
14728
  };
14729
+ /**
14730
+ * _CreateForecastArm
14731
+ *
14732
+ * Create-information-block body for ``block_type="forecast"``.
14733
+ *
14734
+ * Carries a typed forecast payload — the authored scenario container:
14735
+ * scenario identity, horizon, base period, lever assertions on
14736
+ * ``rs-driver:*`` catalog elements. Run ``compute-forecast`` after
14737
+ * creating to derive the forward months.
14738
+ */
14739
+ export type CreateForecastArm = {
14740
+ /**
14741
+ * Block Type
14742
+ *
14743
+ * Discriminator value selecting this arm.
14744
+ */
14745
+ block_type: 'forecast';
14746
+ /**
14747
+ * Forecast creation payload.
14748
+ */
14749
+ payload: CreateForecastRequest;
14750
+ };
14282
14751
  /**
14283
14752
  * _CreateLegacyArm
14284
14753
  *
@@ -14352,6 +14821,26 @@ export type CreateScheduleArm = {
14352
14821
  */
14353
14822
  payload: CreateScheduleRequest;
14354
14823
  };
14824
+ /**
14825
+ * _DeleteForecastArm
14826
+ *
14827
+ * Delete-information-block body for ``block_type="forecast"``.
14828
+ *
14829
+ * Removes the scenario's entire parallel universe — the lever FactSet
14830
+ * and every computed scenario FactSet. Actuals are never touched.
14831
+ */
14832
+ export type DeleteForecastArm = {
14833
+ /**
14834
+ * Block Type
14835
+ *
14836
+ * Discriminator value selecting this arm.
14837
+ */
14838
+ block_type: 'forecast';
14839
+ /**
14840
+ * Forecast delete payload.
14841
+ */
14842
+ payload: DeleteForecastRequest;
14843
+ };
14355
14844
  /**
14356
14845
  * _DeleteLegacyArm
14357
14846
  *
@@ -14417,6 +14906,27 @@ export type DeleteScheduleArm = {
14417
14906
  */
14418
14907
  payload: DeleteScheduleRequest;
14419
14908
  };
14909
+ /**
14910
+ * _UpdateForecastArm
14911
+ *
14912
+ * Update-information-block body for ``block_type="forecast"``.
14913
+ *
14914
+ * Mutable: name, scenario_kind, horizon_months, base_period, levers
14915
+ * (full replace). Updating does not recompute — run ``compute-forecast``
14916
+ * to refresh the scenario's derived months.
14917
+ */
14918
+ export type UpdateForecastArm = {
14919
+ /**
14920
+ * Block Type
14921
+ *
14922
+ * Discriminator value selecting this arm.
14923
+ */
14924
+ block_type: 'forecast';
14925
+ /**
14926
+ * Forecast update payload.
14927
+ */
14928
+ payload: UpdateForecastRequest;
14929
+ };
14420
14930
  /**
14421
14931
  * _UpdateLegacyArm
14422
14932
  *
@@ -21372,6 +21882,65 @@ export type ComputeMetricsResponses = {
21372
21882
  200: OperationEnvelopeComputeMetricsResponse;
21373
21883
  };
21374
21884
  export type ComputeMetricsResponse2 = ComputeMetricsResponses[keyof ComputeMetricsResponses];
21885
+ export type ComputeForecastData = {
21886
+ body: ComputeForecastRequest;
21887
+ headers?: {
21888
+ /**
21889
+ * Idempotency-Key
21890
+ */
21891
+ 'Idempotency-Key'?: string | null;
21892
+ };
21893
+ path: {
21894
+ /**
21895
+ * Graph Id
21896
+ */
21897
+ graph_id: string;
21898
+ };
21899
+ query?: never;
21900
+ url: '/extensions/roboledger/{graph_id}/operations/compute-forecast';
21901
+ };
21902
+ export type ComputeForecastErrors = {
21903
+ /**
21904
+ * Invalid request
21905
+ */
21906
+ 400: ErrorResponse;
21907
+ /**
21908
+ * Authentication required
21909
+ */
21910
+ 401: ErrorResponse;
21911
+ /**
21912
+ * Access denied
21913
+ */
21914
+ 403: ErrorResponse;
21915
+ /**
21916
+ * Resource not found
21917
+ */
21918
+ 404: ErrorResponse;
21919
+ /**
21920
+ * Idempotency-Key conflict — key reused with different body
21921
+ */
21922
+ 409: ErrorResponse;
21923
+ /**
21924
+ * Validation error
21925
+ */
21926
+ 422: ErrorResponse;
21927
+ /**
21928
+ * Rate limit exceeded
21929
+ */
21930
+ 429: ErrorResponse;
21931
+ /**
21932
+ * Internal server error
21933
+ */
21934
+ 500: ErrorResponse;
21935
+ };
21936
+ export type ComputeForecastError = ComputeForecastErrors[keyof ComputeForecastErrors];
21937
+ export type ComputeForecastResponses = {
21938
+ /**
21939
+ * Successful Response
21940
+ */
21941
+ 200: OperationEnvelopeComputeForecastResponse;
21942
+ };
21943
+ export type ComputeForecastResponse2 = ComputeForecastResponses[keyof ComputeForecastResponses];
21375
21944
  export type BindTextBlockData = {
21376
21945
  body: BindTextBlockRequest;
21377
21946
  headers?: {