@thinkai/tai-api-contract 2.29.0 → 3.1.0-pr.731.2

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.
@@ -1,7 +1,7 @@
1
1
  openapi: 3.0.3
2
2
  info:
3
3
  title: ThinkAI API
4
- version: 2.27.0
4
+ version: 3.1.0
5
5
  description: >
6
6
  Contract surface for the AI Driven SDLC backend used by ThinkAI.
7
7
  Workspace-scoped routes use `/workspaces/{workspaceId}/...`.
@@ -2447,6 +2447,97 @@ paths:
2447
2447
  schema:
2448
2448
  $ref: "#/components/schemas/ErrorMessageDto"
2449
2449
 
2450
+ /workspaces/{workspaceId}/integrations/github-actions:
2451
+ get:
2452
+ tags: [Integrations]
2453
+ summary: GitHub Actions CI integration status for workspace
2454
+ operationId: getWorkspaceGithubActionsIntegrationStatus
2455
+ description: >
2456
+ Returns whether the workspace has explicitly enabled GitHub Actions CI metrics.
2457
+ Requires GitHub App (source control) to be connected; does not use workspace `sources` PATs.
2458
+ When GitHub is not connected, returns 200 with `githubConnected: false` and `enabled: false`.
2459
+ parameters:
2460
+ - $ref: "#/components/parameters/WorkspaceId"
2461
+ responses:
2462
+ "200":
2463
+ description: GitHub Actions integration status
2464
+ content:
2465
+ application/json:
2466
+ schema:
2467
+ $ref: "#/components/schemas/GithubActionsIntegrationStatusDto"
2468
+ "401":
2469
+ $ref: "#/components/responses/Unauthorized"
2470
+ "403":
2471
+ $ref: "#/components/responses/Forbidden"
2472
+ "404":
2473
+ description: Workspace does not exist or malformed workspaceId
2474
+ content:
2475
+ application/json:
2476
+ schema:
2477
+ $ref: "#/components/schemas/ErrorMessageDto"
2478
+
2479
+ delete:
2480
+ tags: [Integrations]
2481
+ summary: Disable GitHub Actions CI integration
2482
+ operationId: deleteWorkspaceGithubActionsIntegration
2483
+ description: >
2484
+ Disables GitHub Actions CI opt-in for the workspace. Does not disconnect GitHub source control.
2485
+ Idempotent: returns 204 when already disabled.
2486
+ security:
2487
+ - bearerAuth: []
2488
+ parameters:
2489
+ - $ref: "#/components/parameters/WorkspaceId"
2490
+ responses:
2491
+ "204":
2492
+ description: GitHub Actions integration disabled or was already absent
2493
+ "401":
2494
+ $ref: "#/components/responses/Unauthorized"
2495
+ "403":
2496
+ $ref: "#/components/responses/Forbidden"
2497
+ "404":
2498
+ description: Workspace does not exist or malformed workspaceId
2499
+ content:
2500
+ application/json:
2501
+ schema:
2502
+ $ref: "#/components/schemas/ErrorMessageDto"
2503
+
2504
+ /workspaces/{workspaceId}/integrations/github-actions/enable:
2505
+ post:
2506
+ tags: [Integrations]
2507
+ summary: Enable GitHub Actions CI integration
2508
+ operationId: postWorkspaceGithubActionsIntegrationEnable
2509
+ description: >
2510
+ Opts the workspace into GitHub Actions CI metrics using the existing GitHub App installation
2511
+ (no separate OAuth or PAT). Returns `outcome: needs_github` when source control is not connected,
2512
+ or `outcome: permissions_missing` when the installation lacks Actions read permission.
2513
+ security:
2514
+ - bearerAuth: []
2515
+ parameters:
2516
+ - $ref: "#/components/parameters/WorkspaceId"
2517
+ responses:
2518
+ "200":
2519
+ description: Enable result
2520
+ content:
2521
+ application/json:
2522
+ schema:
2523
+ $ref: "#/components/schemas/GithubActionsEnableResponseDto"
2524
+ "401":
2525
+ $ref: "#/components/responses/Unauthorized"
2526
+ "403":
2527
+ $ref: "#/components/responses/Forbidden"
2528
+ "404":
2529
+ description: Workspace does not exist or malformed workspaceId
2530
+ content:
2531
+ application/json:
2532
+ schema:
2533
+ $ref: "#/components/schemas/ErrorMessageDto"
2534
+ "503":
2535
+ description: GitHub App not configured or smoke test failed
2536
+ content:
2537
+ application/json:
2538
+ schema:
2539
+ $ref: "#/components/schemas/ErrorMessageDto"
2540
+
2450
2541
  /integrations/github/webhook:
2451
2542
  post:
2452
2543
  tags: [Integrations]
@@ -3122,6 +3213,25 @@ paths:
3122
3213
  - $ref: "#/components/parameters/PaginationLimit"
3123
3214
  - $ref: "#/components/parameters/PaginationOffset"
3124
3215
  - $ref: "#/components/parameters/PaginationOrder"
3216
+ - name: sort
3217
+ in: query
3218
+ required: false
3219
+ description: >
3220
+ Server-side sort column (the activity "5 W's"). Combined with `order` (asc/desc).
3221
+ Defaults to `when` (occurredAt). `occurredAt`/`id` is always the tiebreaker.
3222
+ schema:
3223
+ type: string
3224
+ enum: [when, who, what, why, where]
3225
+ - name: productArea
3226
+ in: query
3227
+ required: false
3228
+ description: >
3229
+ Coarse product-area grouping filter (#156). `integration` = GitHub + AI-tool key events;
3230
+ `agentic_foundation` = repos, readiness scans, fixes; `workspace_team` = members + HRIS.
3231
+ Omit (or pass `all`) for every area.
3232
+ schema:
3233
+ type: string
3234
+ enum: [integration, agentic_foundation, workspace_team, all]
3125
3235
  - name: eventType
3126
3236
  in: query
3127
3237
  description: Filter to a specific event type.
@@ -3916,6 +4026,79 @@ paths:
3916
4026
  "403":
3917
4027
  $ref: "#/components/responses/Forbidden"
3918
4028
 
4029
+ /workspaces/{workspaceId}/repo-eligibility:
4030
+ get:
4031
+ tags: [RepositoryReadiness]
4032
+ summary: Get repo-sync eligibility gate (defaults + per-workspace overrides)
4033
+ description: >
4034
+ Returns the effective repo-sync eligibility gate (archived / fork / size / count) for the
4035
+ workspace: the global `defaults`, any per-workspace `overrides`, the merged `effective`
4036
+ values, and whether the caller can edit without platform-admin (`canEditUnrestricted`).
4037
+ Member-level read access.
4038
+ operationId: getWorkspaceRepoEligibility
4039
+ parameters:
4040
+ - $ref: "#/components/parameters/WorkspaceId"
4041
+ responses:
4042
+ "200":
4043
+ description: Effective repo-eligibility configuration
4044
+ content:
4045
+ application/json:
4046
+ schema:
4047
+ $ref: "#/components/schemas/WorkspaceRepoEligibilityDto"
4048
+ "401":
4049
+ $ref: "#/components/responses/Unauthorized"
4050
+ "403":
4051
+ $ref: "#/components/responses/Forbidden"
4052
+ put:
4053
+ tags: [RepositoryReadiness]
4054
+ summary: Set per-workspace repo-sync eligibility overrides
4055
+ description: >
4056
+ Set (or clear, with an empty `overrides`) the per-workspace repo-sync eligibility overrides.
4057
+ **Platform admins** may set any value (raise caps, `0` = unlimited, include archived/forks).
4058
+ **Workspace admins** may only make the gate *more restrictive* than the platform defaults
4059
+ (lower caps, exclude archived/forks) — exceeding a platform limit returns `403`
4060
+ (`repo_eligibility_bound_exceeded`). Requires workspace admin or platform admin.
4061
+ operationId: putWorkspaceRepoEligibility
4062
+ parameters:
4063
+ - $ref: "#/components/parameters/WorkspaceId"
4064
+ requestBody:
4065
+ required: true
4066
+ content:
4067
+ application/json:
4068
+ schema:
4069
+ type: object
4070
+ required: [overrides]
4071
+ properties:
4072
+ overrides:
4073
+ $ref: "#/components/schemas/RepoEligibilityOverridesDto"
4074
+ responses:
4075
+ "200":
4076
+ description: Overrides saved
4077
+ content:
4078
+ application/json:
4079
+ schema:
4080
+ type: object
4081
+ required: [overrides, effective]
4082
+ properties:
4083
+ overrides:
4084
+ $ref: "#/components/schemas/RepoEligibilityOverridesDto"
4085
+ effective:
4086
+ $ref: "#/components/schemas/RepoEligibilityConfigDto"
4087
+ "400":
4088
+ description: Invalid request body
4089
+ content:
4090
+ application/json:
4091
+ schema:
4092
+ $ref: "#/components/schemas/ErrorMessageDto"
4093
+ "401":
4094
+ $ref: "#/components/responses/Unauthorized"
4095
+ "403":
4096
+ description: Forbidden, or a workspace-admin value exceeds a platform limit (`repo_eligibility_bound_exceeded`)
4097
+ content:
4098
+ application/json:
4099
+ schema:
4100
+ $ref: "#/components/schemas/ErrorMessageDto"
4101
+
3919
4102
  /workspaces/{workspaceId}/readiness/cursor-key-usage:
3920
4103
  get:
3921
4104
  tags: [RepositoryReadiness]
@@ -4622,7 +4805,7 @@ paths:
4622
4805
  - $ref: "#/components/parameters/WorkspaceId"
4623
4806
  responses:
4624
4807
  "200":
4625
- description: Sync completed successfully
4808
+ description: Sync completed successfully for all configured HRIS providers
4626
4809
  content:
4627
4810
  application/json:
4628
4811
  schema:
@@ -4632,6 +4815,12 @@ paths:
4632
4815
  employeeCount: 42
4633
4816
  absenceCount: 7
4634
4817
  durationMs: 1234
4818
+ providers:
4819
+ - provider: personio
4820
+ status: ok
4821
+ employeeCount: 42
4822
+ absenceCount: 7
4823
+ durationMs: 1234
4635
4824
  "422":
4636
4825
  description: No HRIS source configured for this workspace
4637
4826
  content:
@@ -4640,10 +4829,10 @@ paths:
4640
4829
  $ref: "#/components/schemas/HrisTriggerSyncResultDto"
4641
4830
  example:
4642
4831
  status: skipped
4643
- code: no_personio_source
4644
- reason: no_personio_source
4832
+ code: no_hris_source
4833
+ reason: no_hris_source
4645
4834
  "500":
4646
- description: Sync failed (Personio API error, decryption failure, etc.)
4835
+ description: Sync failed for one or more HRIS providers
4647
4836
  content:
4648
4837
  application/json:
4649
4838
  schema:
@@ -4651,7 +4840,7 @@ paths:
4651
4840
  example:
4652
4841
  status: error
4653
4842
  code: hris_sync_failed
4654
- error: "Personio employees API 401"
4843
+ error: "ZenHR token refresh failed (401)"
4655
4844
  "401":
4656
4845
  $ref: "#/components/responses/Unauthorized"
4657
4846
  "403":
@@ -6611,6 +6800,123 @@ components:
6611
6800
  format: date-time
6612
6801
  nullable: true
6613
6802
  description: Last push or metadata update from GitHub when available.
6803
+ archived:
6804
+ type: boolean
6805
+ nullable: true
6806
+ description: True when the repository is archived (read-only on GitHub).
6807
+ fork:
6808
+ type: boolean
6809
+ nullable: true
6810
+ description: True when the repository is a fork of another repository.
6811
+ disabled:
6812
+ type: boolean
6813
+ nullable: true
6814
+ description: True when the repository is disabled on GitHub.
6815
+ size:
6816
+ type: integer
6817
+ nullable: true
6818
+ description: Repository size in KB as reported by GitHub.
6819
+ readOnly:
6820
+ type: boolean
6821
+ nullable: true
6822
+ description: >
6823
+ True when the GitHub App installation lacks push access to this repo
6824
+ (read-only). Read-only repos are rejected during sync because readiness
6825
+ fixes require write access.
6826
+ ineligibleReason:
6827
+ type: string
6828
+ nullable: true
6829
+ description: >
6830
+ Set when this repo was skipped during sync due to an eligibility check.
6831
+ The frontend should display this as an inline explanation (e.g. "This repo is archived").
6832
+ eligibilityStatus:
6833
+ type: string
6834
+ enum: [eligible, ineligible]
6835
+ nullable: true
6836
+ description: >
6837
+ Language-based eligibility for Agentic-Foundation readiness analysis (issue #44).
6838
+ `ineligible` repos (no supported stack) render read-only/orange in the AF list with
6839
+ no analyze/score/fix actions. Mixed monorepos with a supported secondary stack are
6840
+ `eligible`. Distinct from `ineligibleReason`, which reflects the structural sync gate.
6841
+ eligibilityReason:
6842
+ type: string
6843
+ nullable: true
6844
+ description: >
6845
+ Human-readable explanation when `eligibilityStatus` is `ineligible`
6846
+ (e.g. "This repository's primary language (Python) is not supported in v1").
6847
+ primaryStack:
6848
+ type: string
6849
+ nullable: true
6850
+ description: >
6851
+ Dominant supported stack (by GitHub language bytes), one of
6852
+ backend_jvm | ios_app | web_spa | backend_go. Null for ineligible repos.
6853
+ secondaryStack:
6854
+ type: string
6855
+ nullable: true
6856
+ description: Second supported stack for a multi-stack repo, or null.
6857
+ supportedStacks:
6858
+ type: array
6859
+ nullable: true
6860
+ items:
6861
+ type: string
6862
+ description: >
6863
+ All supported stacks detected for the repo (ordered, primary first). Empty/null
6864
+ when no supported stack is present. Drives multi-stack scanning and the orange
6865
+ mixed-monorepo box in the AF UI.
6866
+
6867
+ RepoEligibilityConfigDto:
6868
+ type: object
6869
+ description: Resolved repo-sync eligibility gate (defaults or effective). All fields present.
6870
+ required: [excludeArchived, excludeForks, maxRepoSizeKb, maxReposPerWorkspace]
6871
+ properties:
6872
+ excludeArchived:
6873
+ type: boolean
6874
+ description: Skip archived repos during GitHub repo sync.
6875
+ excludeForks:
6876
+ type: boolean
6877
+ description: Skip forked repos. Forks are included by default.
6878
+ maxRepoSizeKb:
6879
+ type: integer
6880
+ description: Max repo size in KB (GitHub-reported). 0 = no limit.
6881
+ maxReposPerWorkspace:
6882
+ type: integer
6883
+ description: Max repos materialized per workspace per sync. 0 = no limit.
6884
+
6885
+ RepoEligibilityOverridesDto:
6886
+ type: object
6887
+ additionalProperties: false
6888
+ description: >
6889
+ Per-workspace overrides for the repo-sync eligibility gate. Any field present wins over the
6890
+ global default; omit a field to inherit the default. An empty object clears all overrides.
6891
+ properties:
6892
+ excludeArchived:
6893
+ type: boolean
6894
+ nullable: true
6895
+ excludeForks:
6896
+ type: boolean
6897
+ nullable: true
6898
+ maxRepoSizeKb:
6899
+ type: integer
6900
+ minimum: 0
6901
+ nullable: true
6902
+ maxReposPerWorkspace:
6903
+ type: integer
6904
+ minimum: 0
6905
+ nullable: true
6906
+
6907
+ WorkspaceRepoEligibilityDto:
6908
+ type: object
6909
+ required: [defaults, overrides, effective, canEditUnrestricted]
6910
+ properties:
6911
+ defaults:
6912
+ $ref: "#/components/schemas/RepoEligibilityConfigDto"
6913
+ overrides:
6914
+ $ref: "#/components/schemas/RepoEligibilityOverridesDto"
6915
+ effective:
6916
+ $ref: "#/components/schemas/RepoEligibilityConfigDto"
6917
+ canEditUnrestricted:
6918
+ type: boolean
6919
+ description: True when the caller is a platform admin (may set any value, incl. raising caps).
6614
6920
 
6615
6921
  GithubMissingPermissionDto:
6616
6922
  type: object
@@ -6682,6 +6988,75 @@ components:
6682
6988
  format: date-time
6683
6989
  description: When the pending install request was recorded.
6684
6990
 
6991
+ GithubActionsWorkflowPreviewDto:
6992
+ type: object
6993
+ additionalProperties: false
6994
+ properties:
6995
+ workflows:
6996
+ type: integer
6997
+ minimum: 0
6998
+ description: Approximate workflow count from recent API sample (best effort).
6999
+ runsThisWeek:
7000
+ type: integer
7001
+ minimum: 0
7002
+ description: Workflow runs in the trailing 7 days from sample repo (best effort).
7003
+
7004
+ GithubActionsIntegrationStatusDto:
7005
+ type: object
7006
+ additionalProperties: false
7007
+ required: [enabled, githubConnected, permissionsOk]
7008
+ properties:
7009
+ enabled:
7010
+ type: boolean
7011
+ description: True when the workspace admin explicitly enabled GitHub Actions CI.
7012
+ githubConnected:
7013
+ type: boolean
7014
+ description: True when at least one GitHub App VCS installation is linked.
7015
+ permissionsOk:
7016
+ type: boolean
7017
+ description: False when GitHub App installation lacks Actions read permission.
7018
+ permissionsUpgradeRequired:
7019
+ type: boolean
7020
+ description: Alias for `!permissionsOk` when GitHub is connected.
7021
+ missingPermissions:
7022
+ type: array
7023
+ items:
7024
+ $ref: "#/components/schemas/GithubMissingPermissionDto"
7025
+ manageUrl:
7026
+ type: string
7027
+ format: uri
7028
+ nullable: true
7029
+ description: GitHub installation settings URL for permission approval.
7030
+ lastSyncAt:
7031
+ type: string
7032
+ format: date-time
7033
+ nullable: true
7034
+ description: Last productivity ingest timestamp when CI is enabled.
7035
+ workflowPreview:
7036
+ nullable: true
7037
+ allOf:
7038
+ - $ref: "#/components/schemas/GithubActionsWorkflowPreviewDto"
7039
+ error:
7040
+ type: string
7041
+ nullable: true
7042
+ description: Last enable or status error message when applicable.
7043
+
7044
+ GithubActionsEnableResponseDto:
7045
+ type: object
7046
+ additionalProperties: false
7047
+ required: [outcome]
7048
+ properties:
7049
+ outcome:
7050
+ type: string
7051
+ enum: [enabled, needs_github, permissions_missing, error]
7052
+ status:
7053
+ nullable: true
7054
+ allOf:
7055
+ - $ref: "#/components/schemas/GithubActionsIntegrationStatusDto"
7056
+ error:
7057
+ type: string
7058
+ nullable: true
7059
+
6685
7060
  GithubInstallationStatusDto:
6686
7061
  type: object
6687
7062
  required: [installed, installations, permissionsUpgradeRequired]
@@ -7569,6 +7944,33 @@ components:
7569
7944
  nullable: true
7570
7945
  enum: [github_removed, installation_disconnected, installation_replaced, superseded, null]
7571
7946
  description: Why the repo was archived. Only present when `archivedAt` is set.
7947
+ eligibilityStatus:
7948
+ type: string
7949
+ enum: [eligible, ineligible]
7950
+ nullable: true
7951
+ description: >
7952
+ Language-based eligibility for Agentic-Foundation analysis (#44). `ineligible` repos
7953
+ (no v1-supported stack) render read-only/orange in the AF list with no analyze/score/fix
7954
+ actions; the server also rejects analyze requests for them. Null until the first
7955
+ sync/scan computes it.
7956
+ eligibilityReason:
7957
+ type: string
7958
+ nullable: true
7959
+ description: Human-readable explanation when `eligibilityStatus` is `ineligible`.
7960
+ primaryStack:
7961
+ type: string
7962
+ nullable: true
7963
+ description: Dominant supported stack — backend_jvm | ios_app | web_spa | backend_go. Null when ineligible/uncomputed.
7964
+ secondaryStack:
7965
+ type: string
7966
+ nullable: true
7967
+ description: Second supported stack for a multi-stack repo, or null.
7968
+ supportedStacks:
7969
+ type: array
7970
+ nullable: true
7971
+ items:
7972
+ type: string
7973
+ description: All supported stacks detected (ordered, primary first). Empty/null when none.
7572
7974
 
7573
7975
  RepoReadinessScoreDetailDto:
7574
7976
  type: object
@@ -8643,18 +9045,29 @@ components:
8643
9045
  - readiness.scan_completed
8644
9046
  - readiness.scan_failed
8645
9047
  - readiness.scan_partial
8646
- - config.cursor.added
8647
- - config.cursor.updated
8648
- - config.cursor.removed
8649
- - config.cursor.platform_key_enabled
8650
- - config.cursor.platform_key_disabled
8651
- - config.claude.added
8652
- - config.claude.updated
8653
- - config.claude.removed
8654
- - config.agent_execution.provider_changed
9048
+ - integrations.agent_execution.provider_changed
9049
+ - integrations.repo_eligibility.overrides_changed
9050
+ - integrations.cursor.platform_key_enabled
9051
+ - integrations.cursor.platform_key_disabled
8655
9052
  - member.invited
8656
9053
  - member.role_changed
8657
9054
  - member.removed
9055
+ - repo.sync_skipped
9056
+ - integrations.cursor.execution_key.added
9057
+ - integrations.cursor.execution_key.updated
9058
+ - integrations.cursor.execution_key.removed
9059
+ - integrations.cursor.execution_key.check_failed
9060
+ - integrations.cursor.admin_key.added
9061
+ - integrations.cursor.admin_key.updated
9062
+ - integrations.cursor.admin_key.removed
9063
+ - integrations.claude.execution_key.added
9064
+ - integrations.claude.execution_key.updated
9065
+ - integrations.claude.execution_key.removed
9066
+ - integrations.claude.execution_key.check_failed
9067
+ - integrations.claude.admin_key.added
9068
+ - integrations.claude.admin_key.updated
9069
+ - integrations.claude.admin_key.removed
9070
+ - readiness.scan_precheck_failed
8658
9071
 
8659
9072
  ActivityLogActorDto:
8660
9073
  type: object
@@ -8802,25 +9215,49 @@ components:
8802
9215
  properties:
8803
9216
  status:
8804
9217
  type: string
8805
- enum: [ok, skipped, error]
9218
+ enum: [ok, skipped, error, partial]
8806
9219
  code:
8807
9220
  type: string
8808
- description: Stable machine-readable code (e.g. 'no_personio_source', 'hris_sync_failed').
9221
+ description: Stable machine-readable code (e.g. 'no_hris_source', 'hris_sync_failed').
8809
9222
  employeeCount:
8810
9223
  type: integer
8811
- description: Number of employees synced (present when status = 'ok').
9224
+ description: Employees synced across successful providers (when status = ok or partial).
8812
9225
  absenceCount:
8813
9226
  type: integer
8814
- description: Number of absence records synced (present when status = 'ok').
9227
+ description: Absence rows synced across successful providers.
8815
9228
  durationMs:
8816
9229
  type: integer
8817
- description: Wall-clock duration of the sync in milliseconds (present when status = 'ok').
9230
+ description: Wall-clock duration of the sync in milliseconds.
8818
9231
  reason:
8819
9232
  type: string
8820
- description: Machine-readable reason for a skipped sync (e.g. 'no_personio_source').
9233
+ description: Machine-readable reason for a skipped sync (e.g. 'no_hris_source').
9234
+ error:
9235
+ type: string
9236
+ description: Error message when status = error, or first provider failure when partial.
9237
+ providers:
9238
+ type: array
9239
+ description: Per-provider sync outcomes when one or more HRIS sources are configured.
9240
+ items:
9241
+ $ref: "#/components/schemas/HrisProviderSyncResultDto"
9242
+
9243
+ HrisProviderSyncResultDto:
9244
+ type: object
9245
+ required: [provider, status]
9246
+ properties:
9247
+ provider:
9248
+ type: string
9249
+ description: HRIS provider identifier (personio, zenhr, …).
9250
+ status:
9251
+ type: string
9252
+ enum: [ok, error]
9253
+ employeeCount:
9254
+ type: integer
9255
+ absenceCount:
9256
+ type: integer
9257
+ durationMs:
9258
+ type: integer
8821
9259
  error:
8822
9260
  type: string
8823
- description: Error message when status = 'error'.
8824
9261
 
8825
9262
  ActivityLogPageDto:
8826
9263
  allOf:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@thinkai/tai-api-contract",
3
- "version": "2.29.0",
3
+ "version": "3.1.0-pr.731.2",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -21,9 +21,10 @@
21
21
  "dependencies": {},
22
22
  "devDependencies": {
23
23
  "@stoplight/spectral-cli": "^6.15.1",
24
+ "@types/node": "^25.9.1",
24
25
  "jsonpath-plus": "^10.3.0",
25
26
  "openapi-typescript": "^7.13.0",
26
- "typescript": "~5.3.0"
27
+ "typescript": "~6.0.3"
27
28
  },
28
29
  "files": [
29
30
  "dist",