@lunnoa/client 1.1.0 → 1.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.
package/dist/react.d.cts CHANGED
@@ -109,6 +109,15 @@ type ChatMode = 'builder' | 'preview';
109
109
  interface StreamMessageOptions {
110
110
  /** Agent chat mode; defaults to the server default (`builder`). */
111
111
  chatMode?: ChatMode;
112
+ /** Optional image attachment forwarded with this turn. */
113
+ data?: {
114
+ imageUrl?: string;
115
+ };
116
+ /**
117
+ * Answer to an ask-before-sending personal-data prompt.
118
+ * Applies to this message only.
119
+ */
120
+ piiResolution?: 'anonymize' | 'fallback';
112
121
  /** Abort the stream (closes the HTTP connection; the run keeps going server-side — call `stop` to cancel it). */
113
122
  signal?: AbortSignal;
114
123
  }
@@ -227,8 +236,6 @@ interface components {
227
236
  SKILLS: boolean;
228
237
  /** @description Whether the hexagonal agent builder canvas UI is enabled. */
229
238
  AGENT_BUILDER_CANVAS: boolean;
230
- /** @description Whether the Solution Designer UI is enabled. */
231
- SOLUTION_DESIGNER: boolean;
232
239
  /** @description Whether isolated code execution for agents is enabled. */
233
240
  CODE_EXECUTION: boolean;
234
241
  /** @description Whether SSO (OIDC) login is enabled. Requires at least one enabled SSO provider. */
@@ -849,9 +856,7 @@ interface components {
849
856
  /** @description Error message to record against the queue item. */
850
857
  error: string;
851
858
  /** @description Additional structured error details, supplied as a JSON string. */
852
- errorDetails?: {
853
- [key: string]: unknown;
854
- };
859
+ errorDetails?: string;
855
860
  };
856
861
  BulkDeleteItemsDto: {
857
862
  /** @description IDs of the queue items to delete. */
@@ -1086,11 +1091,6 @@ interface components {
1086
1091
  attributes?: {
1087
1092
  [key: string]: unknown;
1088
1093
  };
1089
- /**
1090
- * Format: uuid
1091
- * @description Workspace user ID of the entity owner.
1092
- */
1093
- ownerId?: string;
1094
1094
  };
1095
1095
  ObjectTypeSummaryDto: {
1096
1096
  /** @description Entity type ID. */
@@ -1206,8 +1206,6 @@ interface components {
1206
1206
  attributes?: {
1207
1207
  [key: string]: unknown;
1208
1208
  };
1209
- /** @description Workspace user ID of the new entity owner. */
1210
- ownerId?: string;
1211
1209
  };
1212
1210
  ChangeObjectStateDto: {
1213
1211
  /** @description ID of the target state. Must be a valid transition from the current state when the entity type defines transitions. */
@@ -1991,7 +1989,7 @@ interface components {
1991
1989
  approvalStatus?: "pending" | "partially_approved" | "approved" | "rejected" | "expired";
1992
1990
  /** @description Number of approve decisions received so far */
1993
1991
  approvalsReceived?: number;
1994
- /** @description Number of approvals required for quorum / current stage */
1992
+ /** @description How many approvals are required before the workflow continues */
1995
1993
  approvalsRequired?: number;
1996
1994
  };
1997
1995
  PendingInputFieldDto: {
@@ -2369,11 +2367,15 @@ interface components {
2369
2367
  * "imageUrl": "https://example.com/image.png"
2370
2368
  * }
2371
2369
  */
2372
- data?: Record<string, never>;
2373
- /** @description Solution Designer handoff */
2374
- solutionId?: string;
2375
- planStepId?: string;
2376
- delegationId?: string;
2370
+ data?: {
2371
+ /** @description URL of an image attached to the message. */
2372
+ imageUrl?: string;
2373
+ };
2374
+ /**
2375
+ * @description Answer to an ask-before-sending personal-data prompt. Applies to this message only.
2376
+ * @enum {string}
2377
+ */
2378
+ piiResolution?: "anonymize" | "fallback";
2377
2379
  };
2378
2380
  StreamMessageStopDto: {
2379
2381
  /** @description Partial assistant message to persist when stopping a stream */
@@ -2969,8 +2971,6 @@ interface ListEntitiesOptions {
2969
2971
  state?: string;
2970
2972
  /** Filter by several states (comma-separated server-side). */
2971
2973
  states?: string[];
2972
- /** Filter by owner workspace-user ID. */
2973
- ownerId?: string;
2974
2974
  /** Free-text search over entity names. */
2975
2975
  search?: string;
2976
2976
  sortBy?: string;
@@ -3002,7 +3002,6 @@ interface ExportEntitiesInput {
3002
3002
  value: unknown;
3003
3003
  }>;
3004
3004
  format?: 'csv' | 'xlsx';
3005
- includeRelatedEntityNames?: boolean;
3006
3005
  }
3007
3006
  /**
3008
3007
  * Entities (the platform calls them Objects internally): the structured data
@@ -3108,7 +3107,6 @@ type ApprovalInboxItem = {
3108
3107
  status: string;
3109
3108
  requiredCount: number;
3110
3109
  receivedApprovals: number;
3111
- currentStageIndex?: number;
3112
3110
  expiresAt?: string;
3113
3111
  createdAt?: string;
3114
3112
  updatedAt?: string;
@@ -3127,7 +3125,7 @@ type ApprovalInboxItem = {
3127
3125
  comment?: string;
3128
3126
  decidedAt?: string;
3129
3127
  };
3130
- /** People who can still decide (current stage; emails resolved). */
3128
+ /** People who can still decide. */
3131
3129
  eligibleApprovers?: EligibleApprover[];
3132
3130
  approval?: Record<string, unknown>;
3133
3131
  };
@@ -3196,6 +3194,16 @@ declare class ProjectsResource {
3196
3194
  create(data: CreateProjectInput): Promise<Project>;
3197
3195
  }
3198
3196
 
3197
+ type QueueItemStatus = 'PENDING' | 'PROCESSING' | 'SUCCESS' | 'FAILED' | 'RETRYING';
3198
+ interface AddQueueItemErrorInput {
3199
+ /** Error message recorded on the item. */
3200
+ error: string;
3201
+ /**
3202
+ * Extra details. An object is sent as a JSON string, which is what the
3203
+ * server validates.
3204
+ */
3205
+ errorDetails?: string | Record<string, unknown>;
3206
+ }
3199
3207
  interface ListQueueItemsOptions {
3200
3208
  limit?: number;
3201
3209
  offset?: number;
@@ -3241,12 +3249,18 @@ declare class QueueItemsResource {
3241
3249
  }): Promise<QueueItem[]>;
3242
3250
  /** Returns items eligible for retry. */
3243
3251
  listRetryable(queueId: string): Promise<QueueItem[]>;
3244
- /** Returns items with the given status. */
3245
- listByStatus(queueId: string, status: string): Promise<QueueItem[]>;
3252
+ /** Returns a page of items with the given status. */
3253
+ listByStatus(queueId: string, status: QueueItemStatus, options?: {
3254
+ limit?: number;
3255
+ offset?: number;
3256
+ }): Promise<QueueItemList>;
3246
3257
  /** Looks an item up by the external ID your system supplied. */
3247
3258
  getByExternalId(queueId: string, externalId: string): Promise<QueueItemFull>;
3248
- /** Searches items in the queue. */
3249
- search(queueId: string, query: string): Promise<QueueItem[]>;
3259
+ /**
3260
+ * Searches items by external id, item data, and metadata.
3261
+ * Returns one page, same shape as `list`.
3262
+ */
3263
+ search(queueId: string, query: string, options?: Omit<ListQueueItemsOptions, 'filterBy'>): Promise<QueueItemList>;
3250
3264
  /** Returns per-status and per-priority counts for the queue. */
3251
3265
  stats(queueId: string): Promise<QueueItemStats>;
3252
3266
  /** Returns the recorded processing errors of an item. */
@@ -3258,10 +3272,7 @@ declare class QueueItemsResource {
3258
3272
  /** Queues the item for another processing attempt. */
3259
3273
  retry(queueId: string, itemId: string): Promise<QueueItem>;
3260
3274
  /** Records a processing error on the item. */
3261
- addError(queueId: string, itemId: string, error: {
3262
- message: string;
3263
- [key: string]: unknown;
3264
- }): Promise<QueueItem>;
3275
+ addError(queueId: string, itemId: string, error: AddQueueItemErrorInput): Promise<QueueItem>;
3265
3276
  }
3266
3277
 
3267
3278
  declare class QueuesResource {
@@ -3318,6 +3329,91 @@ declare class RunsResource {
3318
3329
  startAndWait(input: StartRunInput, waitOptions?: WaitUntilFinishedOptions): Promise<Execution>;
3319
3330
  }
3320
3331
 
3332
+ type ScorecardMeasureStatus = 'ON_TRACK' | 'AT_RISK' | 'OFF_TRACK' | 'NO_DATA';
3333
+ type ScorecardSummary = {
3334
+ id: string;
3335
+ name: string;
3336
+ periodLabel: string | null;
3337
+ description: string | null;
3338
+ FK_ownerId: string | null;
3339
+ createdAt: string;
3340
+ _count: {
3341
+ objectives: number;
3342
+ };
3343
+ };
3344
+ type ScorecardMeasure = {
3345
+ id: string;
3346
+ name: string;
3347
+ unit: string;
3348
+ currency: string | null;
3349
+ direction: 'HIGHER_IS_BETTER' | 'LOWER_IS_BETTER';
3350
+ kind: 'LEADING' | 'LAGGING';
3351
+ cadence: 'DAILY' | 'WEEKLY' | 'MONTHLY';
3352
+ sourceType: 'MANUAL' | 'API' | 'WORKFLOW' | 'BUILT_IN';
3353
+ builtInKey: string | null;
3354
+ target: number;
3355
+ atRiskThreshold: number | null;
3356
+ latest: {
3357
+ value: number;
3358
+ periodStart: string;
3359
+ createdAt: string;
3360
+ } | null;
3361
+ previousValue: number | null;
3362
+ series: {
3363
+ periodStart: string;
3364
+ value: number;
3365
+ }[];
3366
+ status: ScorecardMeasureStatus;
3367
+ stale: boolean;
3368
+ };
3369
+ type ScorecardObjective = {
3370
+ id: string;
3371
+ perspective: 'FINANCIAL' | 'CUSTOMER' | 'PROCESS' | 'LEARNING';
3372
+ name: string;
3373
+ description: string | null;
3374
+ ownerLabel: string | null;
3375
+ drivesIds: string[];
3376
+ position: number;
3377
+ status: ScorecardMeasureStatus;
3378
+ measures: ScorecardMeasure[];
3379
+ };
3380
+ type Scorecard = Omit<ScorecardSummary, '_count'> & {
3381
+ aiSpendUsdThisMonth: number;
3382
+ objectives: ScorecardObjective[];
3383
+ };
3384
+ type ScorecardMeasureValue = {
3385
+ id: string;
3386
+ FK_measureId: string;
3387
+ periodStart: string;
3388
+ value: number;
3389
+ note: string | null;
3390
+ sourceType: ScorecardMeasure['sourceType'];
3391
+ supersededAt: string | null;
3392
+ createdAt: string;
3393
+ };
3394
+ type RecordMeasureValueInput = {
3395
+ value: number;
3396
+ /** Any ISO date inside the target period; defaults to the current period. */
3397
+ period?: string;
3398
+ note?: string;
3399
+ };
3400
+ /**
3401
+ * Balanced Scorecard (workspace API). Pushing values needs `scorecard:record`.
3402
+ */
3403
+ declare class ScorecardsResource {
3404
+ private readonly http;
3405
+ constructor(http: HttpClient);
3406
+ /** Lists scorecards in the workspace. */
3407
+ list(): Promise<ScorecardSummary[]>;
3408
+ /** Returns a scorecard with objectives, measures, latest values and status. */
3409
+ get(scorecardId: string): Promise<Scorecard>;
3410
+ /**
3411
+ * Records a measure value. A value for the same period replaces the current
3412
+ * one; the old value is kept as superseded history.
3413
+ */
3414
+ recordValue(measureId: string, data: RecordMeasureValueInput): Promise<ScorecardMeasureValue>;
3415
+ }
3416
+
3321
3417
  declare class TasksResource {
3322
3418
  private readonly http;
3323
3419
  constructor(http: HttpClient);
@@ -3337,9 +3433,7 @@ declare class TasksResource {
3337
3433
  * messages in AI SDK UIMessage format. For token-by-token output use
3338
3434
  * `client.agentChat.streamMessage` instead.
3339
3435
  */
3340
- message(agentId: string, taskId: string, message: string | UIMessage, options?: {
3341
- chatMode?: ChatMode;
3342
- }): Promise<string | UIMessage[]>;
3436
+ message(agentId: string, taskId: string, message: string | UIMessage, options?: Omit<StreamMessageOptions, 'signal'>): Promise<string | UIMessage[]>;
3343
3437
  }
3344
3438
 
3345
3439
  declare class VariablesResource {
@@ -3455,6 +3549,7 @@ declare class LunnoaClient {
3455
3549
  readonly queues: QueuesResource;
3456
3550
  readonly queueItems: QueueItemsResource;
3457
3551
  readonly variables: VariablesResource;
3552
+ readonly scorecards: ScorecardsResource;
3458
3553
  readonly connections: ConnectionsResource;
3459
3554
  readonly projects: ProjectsResource;
3460
3555
  readonly workflowApps: WorkflowAppsResource;
package/dist/react.d.ts CHANGED
@@ -109,6 +109,15 @@ type ChatMode = 'builder' | 'preview';
109
109
  interface StreamMessageOptions {
110
110
  /** Agent chat mode; defaults to the server default (`builder`). */
111
111
  chatMode?: ChatMode;
112
+ /** Optional image attachment forwarded with this turn. */
113
+ data?: {
114
+ imageUrl?: string;
115
+ };
116
+ /**
117
+ * Answer to an ask-before-sending personal-data prompt.
118
+ * Applies to this message only.
119
+ */
120
+ piiResolution?: 'anonymize' | 'fallback';
112
121
  /** Abort the stream (closes the HTTP connection; the run keeps going server-side — call `stop` to cancel it). */
113
122
  signal?: AbortSignal;
114
123
  }
@@ -227,8 +236,6 @@ interface components {
227
236
  SKILLS: boolean;
228
237
  /** @description Whether the hexagonal agent builder canvas UI is enabled. */
229
238
  AGENT_BUILDER_CANVAS: boolean;
230
- /** @description Whether the Solution Designer UI is enabled. */
231
- SOLUTION_DESIGNER: boolean;
232
239
  /** @description Whether isolated code execution for agents is enabled. */
233
240
  CODE_EXECUTION: boolean;
234
241
  /** @description Whether SSO (OIDC) login is enabled. Requires at least one enabled SSO provider. */
@@ -849,9 +856,7 @@ interface components {
849
856
  /** @description Error message to record against the queue item. */
850
857
  error: string;
851
858
  /** @description Additional structured error details, supplied as a JSON string. */
852
- errorDetails?: {
853
- [key: string]: unknown;
854
- };
859
+ errorDetails?: string;
855
860
  };
856
861
  BulkDeleteItemsDto: {
857
862
  /** @description IDs of the queue items to delete. */
@@ -1086,11 +1091,6 @@ interface components {
1086
1091
  attributes?: {
1087
1092
  [key: string]: unknown;
1088
1093
  };
1089
- /**
1090
- * Format: uuid
1091
- * @description Workspace user ID of the entity owner.
1092
- */
1093
- ownerId?: string;
1094
1094
  };
1095
1095
  ObjectTypeSummaryDto: {
1096
1096
  /** @description Entity type ID. */
@@ -1206,8 +1206,6 @@ interface components {
1206
1206
  attributes?: {
1207
1207
  [key: string]: unknown;
1208
1208
  };
1209
- /** @description Workspace user ID of the new entity owner. */
1210
- ownerId?: string;
1211
1209
  };
1212
1210
  ChangeObjectStateDto: {
1213
1211
  /** @description ID of the target state. Must be a valid transition from the current state when the entity type defines transitions. */
@@ -1991,7 +1989,7 @@ interface components {
1991
1989
  approvalStatus?: "pending" | "partially_approved" | "approved" | "rejected" | "expired";
1992
1990
  /** @description Number of approve decisions received so far */
1993
1991
  approvalsReceived?: number;
1994
- /** @description Number of approvals required for quorum / current stage */
1992
+ /** @description How many approvals are required before the workflow continues */
1995
1993
  approvalsRequired?: number;
1996
1994
  };
1997
1995
  PendingInputFieldDto: {
@@ -2369,11 +2367,15 @@ interface components {
2369
2367
  * "imageUrl": "https://example.com/image.png"
2370
2368
  * }
2371
2369
  */
2372
- data?: Record<string, never>;
2373
- /** @description Solution Designer handoff */
2374
- solutionId?: string;
2375
- planStepId?: string;
2376
- delegationId?: string;
2370
+ data?: {
2371
+ /** @description URL of an image attached to the message. */
2372
+ imageUrl?: string;
2373
+ };
2374
+ /**
2375
+ * @description Answer to an ask-before-sending personal-data prompt. Applies to this message only.
2376
+ * @enum {string}
2377
+ */
2378
+ piiResolution?: "anonymize" | "fallback";
2377
2379
  };
2378
2380
  StreamMessageStopDto: {
2379
2381
  /** @description Partial assistant message to persist when stopping a stream */
@@ -2969,8 +2971,6 @@ interface ListEntitiesOptions {
2969
2971
  state?: string;
2970
2972
  /** Filter by several states (comma-separated server-side). */
2971
2973
  states?: string[];
2972
- /** Filter by owner workspace-user ID. */
2973
- ownerId?: string;
2974
2974
  /** Free-text search over entity names. */
2975
2975
  search?: string;
2976
2976
  sortBy?: string;
@@ -3002,7 +3002,6 @@ interface ExportEntitiesInput {
3002
3002
  value: unknown;
3003
3003
  }>;
3004
3004
  format?: 'csv' | 'xlsx';
3005
- includeRelatedEntityNames?: boolean;
3006
3005
  }
3007
3006
  /**
3008
3007
  * Entities (the platform calls them Objects internally): the structured data
@@ -3108,7 +3107,6 @@ type ApprovalInboxItem = {
3108
3107
  status: string;
3109
3108
  requiredCount: number;
3110
3109
  receivedApprovals: number;
3111
- currentStageIndex?: number;
3112
3110
  expiresAt?: string;
3113
3111
  createdAt?: string;
3114
3112
  updatedAt?: string;
@@ -3127,7 +3125,7 @@ type ApprovalInboxItem = {
3127
3125
  comment?: string;
3128
3126
  decidedAt?: string;
3129
3127
  };
3130
- /** People who can still decide (current stage; emails resolved). */
3128
+ /** People who can still decide. */
3131
3129
  eligibleApprovers?: EligibleApprover[];
3132
3130
  approval?: Record<string, unknown>;
3133
3131
  };
@@ -3196,6 +3194,16 @@ declare class ProjectsResource {
3196
3194
  create(data: CreateProjectInput): Promise<Project>;
3197
3195
  }
3198
3196
 
3197
+ type QueueItemStatus = 'PENDING' | 'PROCESSING' | 'SUCCESS' | 'FAILED' | 'RETRYING';
3198
+ interface AddQueueItemErrorInput {
3199
+ /** Error message recorded on the item. */
3200
+ error: string;
3201
+ /**
3202
+ * Extra details. An object is sent as a JSON string, which is what the
3203
+ * server validates.
3204
+ */
3205
+ errorDetails?: string | Record<string, unknown>;
3206
+ }
3199
3207
  interface ListQueueItemsOptions {
3200
3208
  limit?: number;
3201
3209
  offset?: number;
@@ -3241,12 +3249,18 @@ declare class QueueItemsResource {
3241
3249
  }): Promise<QueueItem[]>;
3242
3250
  /** Returns items eligible for retry. */
3243
3251
  listRetryable(queueId: string): Promise<QueueItem[]>;
3244
- /** Returns items with the given status. */
3245
- listByStatus(queueId: string, status: string): Promise<QueueItem[]>;
3252
+ /** Returns a page of items with the given status. */
3253
+ listByStatus(queueId: string, status: QueueItemStatus, options?: {
3254
+ limit?: number;
3255
+ offset?: number;
3256
+ }): Promise<QueueItemList>;
3246
3257
  /** Looks an item up by the external ID your system supplied. */
3247
3258
  getByExternalId(queueId: string, externalId: string): Promise<QueueItemFull>;
3248
- /** Searches items in the queue. */
3249
- search(queueId: string, query: string): Promise<QueueItem[]>;
3259
+ /**
3260
+ * Searches items by external id, item data, and metadata.
3261
+ * Returns one page, same shape as `list`.
3262
+ */
3263
+ search(queueId: string, query: string, options?: Omit<ListQueueItemsOptions, 'filterBy'>): Promise<QueueItemList>;
3250
3264
  /** Returns per-status and per-priority counts for the queue. */
3251
3265
  stats(queueId: string): Promise<QueueItemStats>;
3252
3266
  /** Returns the recorded processing errors of an item. */
@@ -3258,10 +3272,7 @@ declare class QueueItemsResource {
3258
3272
  /** Queues the item for another processing attempt. */
3259
3273
  retry(queueId: string, itemId: string): Promise<QueueItem>;
3260
3274
  /** Records a processing error on the item. */
3261
- addError(queueId: string, itemId: string, error: {
3262
- message: string;
3263
- [key: string]: unknown;
3264
- }): Promise<QueueItem>;
3275
+ addError(queueId: string, itemId: string, error: AddQueueItemErrorInput): Promise<QueueItem>;
3265
3276
  }
3266
3277
 
3267
3278
  declare class QueuesResource {
@@ -3318,6 +3329,91 @@ declare class RunsResource {
3318
3329
  startAndWait(input: StartRunInput, waitOptions?: WaitUntilFinishedOptions): Promise<Execution>;
3319
3330
  }
3320
3331
 
3332
+ type ScorecardMeasureStatus = 'ON_TRACK' | 'AT_RISK' | 'OFF_TRACK' | 'NO_DATA';
3333
+ type ScorecardSummary = {
3334
+ id: string;
3335
+ name: string;
3336
+ periodLabel: string | null;
3337
+ description: string | null;
3338
+ FK_ownerId: string | null;
3339
+ createdAt: string;
3340
+ _count: {
3341
+ objectives: number;
3342
+ };
3343
+ };
3344
+ type ScorecardMeasure = {
3345
+ id: string;
3346
+ name: string;
3347
+ unit: string;
3348
+ currency: string | null;
3349
+ direction: 'HIGHER_IS_BETTER' | 'LOWER_IS_BETTER';
3350
+ kind: 'LEADING' | 'LAGGING';
3351
+ cadence: 'DAILY' | 'WEEKLY' | 'MONTHLY';
3352
+ sourceType: 'MANUAL' | 'API' | 'WORKFLOW' | 'BUILT_IN';
3353
+ builtInKey: string | null;
3354
+ target: number;
3355
+ atRiskThreshold: number | null;
3356
+ latest: {
3357
+ value: number;
3358
+ periodStart: string;
3359
+ createdAt: string;
3360
+ } | null;
3361
+ previousValue: number | null;
3362
+ series: {
3363
+ periodStart: string;
3364
+ value: number;
3365
+ }[];
3366
+ status: ScorecardMeasureStatus;
3367
+ stale: boolean;
3368
+ };
3369
+ type ScorecardObjective = {
3370
+ id: string;
3371
+ perspective: 'FINANCIAL' | 'CUSTOMER' | 'PROCESS' | 'LEARNING';
3372
+ name: string;
3373
+ description: string | null;
3374
+ ownerLabel: string | null;
3375
+ drivesIds: string[];
3376
+ position: number;
3377
+ status: ScorecardMeasureStatus;
3378
+ measures: ScorecardMeasure[];
3379
+ };
3380
+ type Scorecard = Omit<ScorecardSummary, '_count'> & {
3381
+ aiSpendUsdThisMonth: number;
3382
+ objectives: ScorecardObjective[];
3383
+ };
3384
+ type ScorecardMeasureValue = {
3385
+ id: string;
3386
+ FK_measureId: string;
3387
+ periodStart: string;
3388
+ value: number;
3389
+ note: string | null;
3390
+ sourceType: ScorecardMeasure['sourceType'];
3391
+ supersededAt: string | null;
3392
+ createdAt: string;
3393
+ };
3394
+ type RecordMeasureValueInput = {
3395
+ value: number;
3396
+ /** Any ISO date inside the target period; defaults to the current period. */
3397
+ period?: string;
3398
+ note?: string;
3399
+ };
3400
+ /**
3401
+ * Balanced Scorecard (workspace API). Pushing values needs `scorecard:record`.
3402
+ */
3403
+ declare class ScorecardsResource {
3404
+ private readonly http;
3405
+ constructor(http: HttpClient);
3406
+ /** Lists scorecards in the workspace. */
3407
+ list(): Promise<ScorecardSummary[]>;
3408
+ /** Returns a scorecard with objectives, measures, latest values and status. */
3409
+ get(scorecardId: string): Promise<Scorecard>;
3410
+ /**
3411
+ * Records a measure value. A value for the same period replaces the current
3412
+ * one; the old value is kept as superseded history.
3413
+ */
3414
+ recordValue(measureId: string, data: RecordMeasureValueInput): Promise<ScorecardMeasureValue>;
3415
+ }
3416
+
3321
3417
  declare class TasksResource {
3322
3418
  private readonly http;
3323
3419
  constructor(http: HttpClient);
@@ -3337,9 +3433,7 @@ declare class TasksResource {
3337
3433
  * messages in AI SDK UIMessage format. For token-by-token output use
3338
3434
  * `client.agentChat.streamMessage` instead.
3339
3435
  */
3340
- message(agentId: string, taskId: string, message: string | UIMessage, options?: {
3341
- chatMode?: ChatMode;
3342
- }): Promise<string | UIMessage[]>;
3436
+ message(agentId: string, taskId: string, message: string | UIMessage, options?: Omit<StreamMessageOptions, 'signal'>): Promise<string | UIMessage[]>;
3343
3437
  }
3344
3438
 
3345
3439
  declare class VariablesResource {
@@ -3455,6 +3549,7 @@ declare class LunnoaClient {
3455
3549
  readonly queues: QueuesResource;
3456
3550
  readonly queueItems: QueueItemsResource;
3457
3551
  readonly variables: VariablesResource;
3552
+ readonly scorecards: ScorecardsResource;
3458
3553
  readonly connections: ConnectionsResource;
3459
3554
  readonly projects: ProjectsResource;
3460
3555
  readonly workflowApps: WorkflowAppsResource;