@bisibility/sdk 0.15.0 → 0.17.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/CHANGELOG.md +21 -0
- package/README.md +107 -2
- package/dist/ai-research-catalog.d.ts +39 -0
- package/dist/ai-research-catalog.d.ts.map +1 -0
- package/dist/ai-research-catalog.js +2 -0
- package/dist/ai-research-catalog.js.map +1 -0
- package/dist/ai-tracking-catalog-methods.d.ts +18 -0
- package/dist/ai-tracking-catalog-methods.d.ts.map +1 -0
- package/dist/ai-tracking-catalog-methods.js +49 -0
- package/dist/ai-tracking-catalog-methods.js.map +1 -0
- package/dist/ai-tracking-methods.d.ts +35 -0
- package/dist/ai-tracking-methods.d.ts.map +1 -0
- package/dist/ai-tracking-methods.js +15 -0
- package/dist/ai-tracking-methods.js.map +1 -0
- package/dist/ai-tracking-run-methods.d.ts +20 -0
- package/dist/ai-tracking-run-methods.d.ts.map +1 -0
- package/dist/ai-tracking-run-methods.js +59 -0
- package/dist/ai-tracking-run-methods.js.map +1 -0
- package/dist/ai-tracking-suggestion-methods.d.ts +9 -0
- package/dist/ai-tracking-suggestion-methods.d.ts.map +1 -0
- package/dist/ai-tracking-suggestion-methods.js +36 -0
- package/dist/ai-tracking-suggestion-methods.js.map +1 -0
- package/dist/ai-tracking-suggestions.d.ts +63 -0
- package/dist/ai-tracking-suggestions.d.ts.map +1 -0
- package/dist/ai-tracking-suggestions.js +2 -0
- package/dist/ai-tracking-suggestions.js.map +1 -0
- package/dist/ai-tracking-transport.d.ts +13 -0
- package/dist/ai-tracking-transport.d.ts.map +1 -0
- package/dist/ai-tracking-transport.js +57 -0
- package/dist/ai-tracking-transport.js.map +1 -0
- package/dist/ai-tracking-validation.d.ts +3 -0
- package/dist/ai-tracking-validation.d.ts.map +1 -0
- package/dist/ai-tracking-validation.js +46 -0
- package/dist/ai-tracking-validation.js.map +1 -0
- package/dist/ai-tracking.d.ts +273 -0
- package/dist/ai-tracking.d.ts.map +1 -0
- package/dist/ai-tracking.js +2 -0
- package/dist/ai-tracking.js.map +1 -0
- package/dist/client.d.ts +57 -4
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +96 -6
- package/dist/client.js.map +1 -1
- package/dist/defaults-review.d.ts +56 -0
- package/dist/defaults-review.d.ts.map +1 -0
- package/dist/defaults-review.js +70 -0
- package/dist/defaults-review.js.map +1 -0
- package/dist/index.d.ts +10 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/local-monitor-id-contract.d.ts +2 -0
- package/dist/local-monitor-id-contract.d.ts.map +1 -0
- package/dist/local-monitor-id-contract.js +49 -0
- package/dist/local-monitor-id-contract.js.map +1 -0
- package/dist/local-monitor-methods.d.ts +21 -0
- package/dist/local-monitor-methods.d.ts.map +1 -0
- package/dist/local-monitor-methods.js +66 -0
- package/dist/local-monitor-methods.js.map +1 -0
- package/dist/local-monitor-models-0.d.ts +179 -0
- package/dist/local-monitor-models-0.d.ts.map +1 -0
- package/dist/local-monitor-models-0.js +2 -0
- package/dist/local-monitor-models-0.js.map +1 -0
- package/dist/local-monitor-models-1.d.ts +127 -0
- package/dist/local-monitor-models-1.d.ts.map +1 -0
- package/dist/local-monitor-models-1.js +2 -0
- package/dist/local-monitor-models-1.js.map +1 -0
- package/dist/local-monitors.d.ts +15 -0
- package/dist/local-monitors.d.ts.map +1 -0
- package/dist/local-monitors.js +3 -0
- package/dist/local-monitors.js.map +1 -0
- package/dist/pagination.d.ts.map +1 -1
- package/dist/pagination.js +7 -0
- package/dist/pagination.js.map +1 -1
- package/dist/public-id-contract.d.ts.map +1 -1
- package/dist/public-id-contract.js +28 -0
- package/dist/public-id-contract.js.map +1 -1
- package/dist/public-id.d.ts +3 -0
- package/dist/public-id.d.ts.map +1 -1
- package/dist/public-id.js +3 -0
- package/dist/public-id.js.map +1 -1
- package/dist/rank-check-runs.d.ts +49 -0
- package/dist/rank-check-runs.d.ts.map +1 -0
- package/dist/rank-check-runs.js +2 -0
- package/dist/rank-check-runs.js.map +1 -0
- package/dist/rank-history-export.d.ts +39 -0
- package/dist/rank-history-export.d.ts.map +1 -0
- package/dist/rank-history-export.js +2 -0
- package/dist/rank-history-export.js.map +1 -0
- package/dist/rank-history-report-items.d.ts +32 -0
- package/dist/rank-history-report-items.d.ts.map +1 -0
- package/dist/rank-history-report-items.js +2 -0
- package/dist/rank-history-report-items.js.map +1 -0
- package/dist/rank-history-report-metadata.d.ts +150 -0
- package/dist/rank-history-report-metadata.d.ts.map +1 -0
- package/dist/rank-history-report-metadata.js +2 -0
- package/dist/rank-history-report-metadata.js.map +1 -0
- package/dist/rank-history-report-pages.d.ts +5 -0
- package/dist/rank-history-report-pages.d.ts.map +1 -0
- package/dist/rank-history-report-pages.js +21 -0
- package/dist/rank-history-report-pages.js.map +1 -0
- package/dist/rank-history-report-runs.d.ts +43 -0
- package/dist/rank-history-report-runs.d.ts.map +1 -0
- package/dist/rank-history-report-runs.js +2 -0
- package/dist/rank-history-report-runs.js.map +1 -0
- package/dist/rank-history-report.d.ts +73 -0
- package/dist/rank-history-report.d.ts.map +1 -0
- package/dist/rank-history-report.js +2 -0
- package/dist/rank-history-report.js.map +1 -0
- package/dist/research-workspace.d.ts +23 -2
- package/dist/research-workspace.d.ts.map +1 -1
- package/dist/resources.d.ts +14 -0
- package/dist/resources.d.ts.map +1 -1
- package/dist/resources.js +15 -0
- package/dist/resources.js.map +1 -1
- package/dist/response-contract-data.d.ts.map +1 -1
- package/dist/response-contract-data.js +342 -184
- package/dist/response-contract-data.js.map +1 -1
- package/dist/response-contract.d.ts +2 -1
- package/dist/response-contract.d.ts.map +1 -1
- package/dist/response-contract.js +5 -2
- package/dist/response-contract.js.map +1 -1
- package/dist/types.d.ts +47 -24
- package/dist/types.d.ts.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,26 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## Unreleased
|
|
4
|
+
|
|
5
|
+
## 0.17.0 - 2026-10-14
|
|
6
|
+
|
|
7
|
+
- Add retained rank-check run reads and versioned rank-history reports with quality, scope, original timestamps, and stable pagination.
|
|
8
|
+
- Add typed Local monitor history, results, point listings, and exports without starting paid checks.
|
|
9
|
+
- Add reviewed project-default previews and explicit confirmations gated by advertised server support.
|
|
10
|
+
|
|
11
|
+
## 0.16.0 - 2026-10-10
|
|
12
|
+
|
|
13
|
+
- Add typed project AI tracking operations for topics, immutable prompt revisions, schedules,
|
|
14
|
+
consented runs, samples, history, trends, evidence exports, and accepted suggestions.
|
|
15
|
+
- Add free AI research catalog reads and prompt comparison options for current models, web search,
|
|
16
|
+
locale hints, and explicitly acknowledged provider actual-cost mode.
|
|
17
|
+
- Add reviewed model suggestion preview and generation with a frozen preview, explicit paid consent,
|
|
18
|
+
and a stable idempotency UUID. Accepted edits retain trusted generation or provider dataset references.
|
|
19
|
+
- Preserve unknown costs and observation times as null, and expose optional evidence export
|
|
20
|
+
completeness and resume metadata.
|
|
21
|
+
- Preserved rank coverage, latest-check evidence and unavailable backlinks history in typed SDK responses.
|
|
22
|
+
- Stopped automatic retries of potentially paid requests, made AI tracking schedule updates partial with top-level consent, and typed trends baseline, category and strata.
|
|
23
|
+
|
|
3
24
|
## 0.15.0 - 2026-10-07
|
|
4
25
|
|
|
5
26
|
- Add typed project context, agent report, AI visibility, prompt comparison, and site audit operations.
|
package/README.md
CHANGED
|
@@ -187,13 +187,13 @@ compatibility delegates until 1.0.
|
|
|
187
187
|
| `aiVisibility` | `analyze` |
|
|
188
188
|
| `promptExplorer` | `compare` |
|
|
189
189
|
| `siteAudits` | `list`, `run`, `get` |
|
|
190
|
-
| `projects` | `list`, `create`, `get`, `update`, `delete`, `getDefaults`, `updateDefaults` |
|
|
190
|
+
| `projects` | `list`, `create`, `get`, `update`, `delete`, `getDefaults`, `previewDefaults`, `updateDefaults` |
|
|
191
191
|
| `apiKeys` | `list`, `iterate`, `create`, `revoke` |
|
|
192
192
|
| `webhooks` | `list`, `iterate`, `create`, `update`, `delete` |
|
|
193
193
|
| `keywords` | `list`, `iterate`, `add`, `get`, `update`, `setTargetUrl`, `delete`, `bulkUpdate`, `match`, `research`, plus `suggestions.list`, `metrics.get` |
|
|
194
194
|
| `backlinks` | `analyze`, `extendSnapshot` |
|
|
195
195
|
| `domainOverview` | `analyze`, `history`, `keywords`, `pages` |
|
|
196
|
-
| `rankChecks` | `list`, `iterate`, `run`, `getResult`, plus `history.export`, `history.iterate` |
|
|
196
|
+
| `rankChecks` | `list`, `iterate`, `run`, `getResult`, plus `runs.list`, `runs.get`, `history.export`, `history.iterate` |
|
|
197
197
|
| `sitemapMonitors` | `list`, `update` |
|
|
198
198
|
| `signals` | `list`, `iterate`, `create` |
|
|
199
199
|
| `analytics` | `overview.get`, `traffic.list`, `traffic.sync`, `searchPerformance.list` |
|
|
@@ -509,3 +509,108 @@ const report = await client.researchReports.get(projectId, "keyword_research", {
|
|
|
509
509
|
const budgets = await client.providers.budgets.list(projectId);
|
|
510
510
|
await client.providers.budgets.update(projectId, "dataforseo", { own: { app: null }, credits: { programmatic: { amount_per_month: 500, unit: "cents" } } });
|
|
511
511
|
```
|
|
512
|
+
|
|
513
|
+
## AI tracking
|
|
514
|
+
|
|
515
|
+
AI tracking methods manage project topics, immutable prompt revisions, disabled-by-default
|
|
516
|
+
schedules, runs, samples, history, comparable trends, evidence exports, and editable prompt
|
|
517
|
+
suggestions. Tracking resource IDs use `ait_`, `aip_`, `apr_`, `ais_`, `air_`, and `asm_`.
|
|
518
|
+
Preview before launching paid work, pass the preview credential/budget/consent revisions, and
|
|
519
|
+
provide explicit consent plus an `Idempotency-Key` for launch or retry. Preview never submits a
|
|
520
|
+
provider task. Preserve the returned decimal USD strings, null amounts, unknown measurement
|
|
521
|
+
states, original observation times, and cited sources. Model API tests and consumer observations
|
|
522
|
+
remain distinct evidence sources.
|
|
523
|
+
|
|
524
|
+
The free AI research catalog supplies current model and locale choices. Prompt comparison
|
|
525
|
+
supports hard caps and explicitly consented provider actual-cost mode. Actual-cost mode requires
|
|
526
|
+
`non_guaranteed_estimate_v1` acknowledgement and an advisory estimate limit; execution also
|
|
527
|
+
requires the estimate credential reference and a stable UUID. An advisory limit is not a
|
|
528
|
+
guaranteed maximum charge.
|
|
529
|
+
|
|
530
|
+
Model prompt generation uses `aiTrackingSuggestionsPreview` followed by
|
|
531
|
+
`aiTrackingSuggestionsGenerate`. Review the complete context, selected competitors, model and
|
|
532
|
+
market before generation; the full serialized snapshot must fit within 5000 Unicode characters.
|
|
533
|
+
Generation requires the complete unexpired preview, explicit paid consent and a stable UUID
|
|
534
|
+
`idempotencyKey`. Forecasts are not guaranteed maximum costs. Accepted edits retain
|
|
535
|
+
`generation_reference: { generation_id, draft_id }`; provider dataset acceptance uses a verified
|
|
536
|
+
`provider_dataset_reference: { report_id, row_index }`. Generated popularity remains null.
|
|
537
|
+
|
|
538
|
+
These additions are unreleased. Tracking and catalog calls require a compatible application API;
|
|
539
|
+
a compatible SDK release must precede the registry-dependent MCP release.
|
|
540
|
+
|
|
541
|
+
## Response evidence compatibility
|
|
542
|
+
|
|
543
|
+
Rank checks expose optional `observation_completeness`, and keywords expose optional
|
|
544
|
+
`latest_check` and `latest_successful_check`. Older responses can omit these fields.
|
|
545
|
+
Only complete coverage supports absence within the requested depth; a positive position
|
|
546
|
+
remains valid with unknown or truncated coverage. A newer failure retains the prior success.
|
|
547
|
+
|
|
548
|
+
Site backlinks normally have 12 history months. A successful partial snapshot has
|
|
549
|
+
`history: []` and `history_unavailable: true`; preserve its summary, rows and confirmed cost.
|
|
550
|
+
Page scope does not request history. Missing availability metadata uses the legacy default.
|
|
551
|
+
A failed summary remains an HTTP error with current-response evidence in problem `details`:
|
|
552
|
+
`cost_cents: null` is an unknown total, while `known_summary_cost_cents` is confirmed.
|
|
553
|
+
|
|
554
|
+
### Retained rank-check runs
|
|
555
|
+
|
|
556
|
+
Read execution state through `bisibility.rankChecks.runs.list(projectId, { segment: "history" })`
|
|
557
|
+
and `bisibility.rankChecks.runs.get(projectId, runId)`. Listing supports `segment` (`history` or
|
|
558
|
+
`planned`), comma-separated `status`, `cursor`, and `limit` filters. A run may be cancelled,
|
|
559
|
+
blocked, deferred, or planned without producing a rank-check observation. Nullable cost and usage
|
|
560
|
+
fields preserve unknown values, and output status fields tolerate future server values.
|
|
561
|
+
|
|
562
|
+
### Versioned retained history exports
|
|
563
|
+
|
|
564
|
+
`history.export(projectId, { version: "2", stream: "observations", basis: "observed_at", from, to })`
|
|
565
|
+
returns typed report records and `meta.report`, including frozen scope, quality,
|
|
566
|
+
counts and metric versions. `history.iterate` keeps that selection on every signed
|
|
567
|
+
continuation. Preserve cursors unchanged; changing scope or retained source requires
|
|
568
|
+
a new export. The default remains legacy v1 rows.
|
|
569
|
+
|
|
570
|
+
The `attempts` stream uses `recorded_at` and includes logical checks plus actual
|
|
571
|
+
retained run/item variants, including cancelled, deferred and blocked execution
|
|
572
|
+
without a check. Project-only runs explicitly lack a proved keyword cohort.
|
|
573
|
+
`unresolved_membership_count` reports such omissions from selected exports.
|
|
574
|
+
Observations contain bounded `normalized_items`; CID values stay opaque strings,
|
|
575
|
+
and raw provider fragments are excluded. Item arrays have retained-only completeness,
|
|
576
|
+
and paginate with their parent observation. Oversized sources fail with `413`.
|
|
577
|
+
CSV is a complete bounded manifest and accepts no continuation.
|
|
578
|
+
|
|
579
|
+
|
|
580
|
+
### Retained Local monitoring reads
|
|
581
|
+
|
|
582
|
+
The unreleased Local APIs expose `listLocalMonitorRuns`, `getLocalMonitorRunResults`,
|
|
583
|
+
`listLocalMonitorPointListings`, `listLocalMonitorPointHistory` and `exportLocalMonitorRun`.
|
|
584
|
+
Use original `lmn`, `lmr` and `lmt` IDs. History options are `asOf`, `from`, `to`
|
|
585
|
+
(canonical UTC milliseconds) and `cursor` (1..8000 characters); windows select
|
|
586
|
+
`occurrence_created_at`. Every page has fresh server authorization. Reuse the full
|
|
587
|
+
selection with a returned signed cursor. Source/policy conflicts require a new selection.
|
|
588
|
+
Result/listing DTOs preserve unknown/null quality, exact string CID and source axes.
|
|
589
|
+
Future output metadata enum values remain strings; invalid inputs and report versions
|
|
590
|
+
are rejected. Local exports support JSON `local-point-report-v1` or CSV and audit each
|
|
591
|
+
successful response. No read launches paid work or initializes accounting.
|
|
592
|
+
|
|
593
|
+
These APIs are unreleased additions to the published package.
|
|
594
|
+
|
|
595
|
+
### Reviewed project defaults
|
|
596
|
+
|
|
597
|
+
Use `projects.previewDefaults(projectId, patch)` to read a signed draft through the existing
|
|
598
|
+
PATCH route with `preview_only=true`. It returns the proposed settings, impact, source hash,
|
|
599
|
+
opaque string revision, and preview token without saving settings or starting provider work.
|
|
600
|
+
Preview requests omit command idempotency headers so a later save receives its own receipt.
|
|
601
|
+
After reviewing that draft, send the same patch to `projects.updateDefaults` with
|
|
602
|
+
`review: { expected_source_hash, expected_revision, preview_token, idempotency_key, confirmed: true }`.
|
|
603
|
+
The SDK preserves that command key when retrying a lost response. Keep the exact body and key;
|
|
604
|
+
a 409 requires a fresh preview, while a 428 means the review is missing. Server permission is
|
|
605
|
+
rechecked on preview, commit, and replay.
|
|
606
|
+
|
|
607
|
+
Preview and updates carrying review require capabilities to advertise
|
|
608
|
+
`features.reviewed_project_defaults: "v1"`. Missing, malformed, or unknown markers stop the
|
|
609
|
+
operation before PATCH, since older servers may ignore `preview_only`. Ordinary updates without
|
|
610
|
+
review preserve legacy behavior; current servers can still require review and return a 428.
|
|
611
|
+
|
|
612
|
+
### Complete retained reports
|
|
613
|
+
|
|
614
|
+
`client.rankChecks.history.exportAll(projectId, { version: "2", format: "json" })` reads all cursor pages of one frozen report, preserving quality, scope, original timestamps, and the report metadata. A changing report or a repeated cursor stops collection instead of merging unrelated evidence.
|
|
615
|
+
|
|
616
|
+
`client.rankChecks.runs.iterate(projectId)` yields retained executions, including blocked and cancelled runs without observations. `client.localMonitors.history`, `results`, `listings`, `pointHistory`, and `export` read previously recorded Local monitor data. These namespaces do not start scans or change schedules; the flat Local methods remain available for compatibility.
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/** Free provider capability discovery; model identifiers come from the current catalog. */
|
|
2
|
+
export interface AiResearchCatalog {
|
|
3
|
+
models: Array<{
|
|
4
|
+
id: string;
|
|
5
|
+
provider: "chat_gpt";
|
|
6
|
+
label: string;
|
|
7
|
+
reasoning: boolean;
|
|
8
|
+
web_search: boolean;
|
|
9
|
+
min_output_tokens: number;
|
|
10
|
+
max_output_tokens: number;
|
|
11
|
+
price_available: boolean;
|
|
12
|
+
admission_enabled: boolean;
|
|
13
|
+
actual_cost_enabled: boolean;
|
|
14
|
+
}>;
|
|
15
|
+
visibility_markets: Array<{
|
|
16
|
+
platform: "chat_gpt" | "google";
|
|
17
|
+
location_code: number;
|
|
18
|
+
country_name: string;
|
|
19
|
+
languages: Array<{
|
|
20
|
+
code: string;
|
|
21
|
+
name: string;
|
|
22
|
+
}>;
|
|
23
|
+
}>;
|
|
24
|
+
response_countries: Array<{
|
|
25
|
+
code: string;
|
|
26
|
+
name: string;
|
|
27
|
+
}>;
|
|
28
|
+
response_languages: Array<{
|
|
29
|
+
code: string;
|
|
30
|
+
name: string;
|
|
31
|
+
}>;
|
|
32
|
+
limits: {
|
|
33
|
+
max_models: 2;
|
|
34
|
+
max_output_tokens: 4096;
|
|
35
|
+
};
|
|
36
|
+
fetched_at: string;
|
|
37
|
+
actual_cost_available?: boolean;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=ai-research-catalog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-research-catalog.d.ts","sourceRoot":"","sources":["../src/ai-research-catalog.ts"],"names":[],"mappings":"AAAA,2FAA2F;AAC3F,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,KAAK,CAAC;QACZ,EAAE,EAAE,MAAM,CAAC;QACX,QAAQ,EAAE,UAAU,CAAC;QACrB,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,OAAO,CAAC;QACnB,UAAU,EAAE,OAAO,CAAC;QACpB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,iBAAiB,EAAE,MAAM,CAAC;QAC1B,eAAe,EAAE,OAAO,CAAC;QACzB,iBAAiB,EAAE,OAAO,CAAC;QAC3B,mBAAmB,EAAE,OAAO,CAAC;KAC9B,CAAC,CAAC;IACH,kBAAkB,EAAE,KAAK,CAAC;QACxB,QAAQ,EAAE,UAAU,GAAG,QAAQ,CAAC;QAChC,aAAa,EAAE,MAAM,CAAC;QACtB,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAClD,CAAC,CAAC;IACH,kBAAkB,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC1D,kBAAkB,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC1D,MAAM,EAAE;QAAE,UAAU,EAAE,CAAC,CAAC;QAAC,iBAAiB,EAAE,IAAI,CAAA;KAAE,CAAC;IACnD,UAAU,EAAE,MAAM,CAAC;IACnB,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-research-catalog.js","sourceRoot":"","sources":["../src/ai-research-catalog.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { AiTrackingPrompt, AiTrackingPromptId, AiTrackingPromptInput, AiTrackingSchedule, AiTrackingScheduleId, AiTrackingScheduleInput, AiTrackingSchedulePatch, AiTrackingTopic, AiTrackingTopicId, AiTrackingTopicInput } from "./ai-tracking.js";
|
|
2
|
+
import type { DataResponse, ListResponse, PaginationOptions, ProjectId, RequestOptions } from "./types.js";
|
|
3
|
+
import { type TrackingTransport } from "./ai-tracking-transport.js";
|
|
4
|
+
export declare function createAiTrackingCatalogMethods(transport: TrackingTransport): {
|
|
5
|
+
listAiTrackingTopics(projectId: ProjectId, input?: PaginationOptions, options?: RequestOptions): Promise<ListResponse<AiTrackingTopic>>;
|
|
6
|
+
createAiTrackingTopic(projectId: ProjectId, input: AiTrackingTopicInput, options?: RequestOptions): Promise<DataResponse<AiTrackingTopic>>;
|
|
7
|
+
updateAiTrackingTopic(projectId: ProjectId, id: AiTrackingTopicId, input: Partial<AiTrackingTopicInput>, options?: RequestOptions): Promise<DataResponse<AiTrackingTopic>>;
|
|
8
|
+
archiveAiTrackingTopic(projectId: ProjectId, id: AiTrackingTopicId, options?: RequestOptions): Promise<DataResponse<AiTrackingTopic>>;
|
|
9
|
+
listAiTrackingPrompts(projectId: ProjectId, input?: PaginationOptions, options?: RequestOptions): Promise<ListResponse<AiTrackingPrompt>>;
|
|
10
|
+
createAiTrackingPrompt(projectId: ProjectId, input: AiTrackingPromptInput, options?: RequestOptions): Promise<DataResponse<AiTrackingPrompt>>;
|
|
11
|
+
updateAiTrackingPrompt(projectId: ProjectId, id: AiTrackingPromptId, input: Partial<AiTrackingPromptInput>, options?: RequestOptions): Promise<DataResponse<AiTrackingPrompt>>;
|
|
12
|
+
archiveAiTrackingPrompt(projectId: ProjectId, id: AiTrackingPromptId, options?: RequestOptions): Promise<DataResponse<AiTrackingPrompt>>;
|
|
13
|
+
listAiTrackingSchedules(projectId: ProjectId, input?: PaginationOptions, options?: RequestOptions): Promise<ListResponse<AiTrackingSchedule>>;
|
|
14
|
+
createAiTrackingSchedule(projectId: ProjectId, input: AiTrackingScheduleInput, options?: RequestOptions): Promise<DataResponse<AiTrackingSchedule>>;
|
|
15
|
+
updateAiTrackingSchedule(projectId: ProjectId, id: AiTrackingScheduleId, input: AiTrackingSchedulePatch, options?: RequestOptions): Promise<DataResponse<AiTrackingSchedule>>;
|
|
16
|
+
archiveAiTrackingSchedule(projectId: ProjectId, id: AiTrackingScheduleId, options?: RequestOptions): Promise<DataResponse<AiTrackingSchedule>>;
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=ai-tracking-catalog-methods.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-tracking-catalog-methods.d.ts","sourceRoot":"","sources":["../src/ai-tracking-catalog-methods.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAMV,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,EAKrB,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,EACvB,uBAAuB,EAEvB,eAAe,EACf,iBAAiB,EACjB,oBAAoB,EAGrB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,cAAc,EACf,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,KAAK,iBAAiB,EAGvB,MAAM,4BAA4B,CAAC;AAEpC,wBAAgB,8BAA8B,CAAC,SAAS,EAAE,iBAAiB;oCAG1D,SAAS,UACb,iBAAiB,YACd,cAAc;qCASb,SAAS,SACb,oBAAoB,YACjB,cAAc;qCAUb,SAAS,MAChB,iBAAiB,SACd,OAAO,CAAC,oBAAoB,CAAC,YAC1B,cAAc;sCASQ,SAAS,MAAM,iBAAiB,YAAY,cAAc;qCAQ/E,SAAS,UACb,iBAAiB,YACd,cAAc;sCASb,SAAS,SACb,qBAAqB,YAClB,cAAc;sCAUb,SAAS,MAChB,kBAAkB,SACf,OAAO,CAAC,qBAAqB,CAAC,YAC3B,cAAc;uCAUb,SAAS,MAChB,kBAAkB,YACZ,cAAc;uCASb,SAAS,UACb,iBAAiB,YACd,cAAc;wCASb,SAAS,SACb,uBAAuB,YACpB,cAAc;wCAUb,SAAS,MAChB,oBAAoB,SACjB,uBAAuB,YACpB,cAAc;yCAUb,SAAS,MAChB,oBAAoB,YACd,cAAc;EAS7B"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { BisibilityConfigurationError } from "./errors.js";
|
|
2
|
+
import { trackingId, validateTrackingInput, } from "./ai-tracking-transport.js";
|
|
3
|
+
export function createAiTrackingCatalogMethods(transport) {
|
|
4
|
+
return {
|
|
5
|
+
listAiTrackingTopics(projectId, input = {}, options) {
|
|
6
|
+
return transport.request("GET", `/projects/${trackingId(projectId, "prj")}/ai-tracking/topics`, { ...options, query: { ...input } });
|
|
7
|
+
},
|
|
8
|
+
createAiTrackingTopic(projectId, input, options) {
|
|
9
|
+
validateTrackingInput(input);
|
|
10
|
+
return transport.request("POST", `/projects/${trackingId(projectId, "prj")}/ai-tracking/topics`, { ...options, body: input });
|
|
11
|
+
},
|
|
12
|
+
updateAiTrackingTopic(projectId, id, input, options) {
|
|
13
|
+
validateTrackingInput(input);
|
|
14
|
+
return transport.request("PATCH", `/projects/${trackingId(projectId, "prj")}/ai-tracking/topics/${trackingId(id, "ait")}`, { ...options, body: input });
|
|
15
|
+
},
|
|
16
|
+
archiveAiTrackingTopic(projectId, id, options) {
|
|
17
|
+
return transport.request("DELETE", `/projects/${trackingId(projectId, "prj")}/ai-tracking/topics/${trackingId(id, "ait")}`, { ...options });
|
|
18
|
+
},
|
|
19
|
+
listAiTrackingPrompts(projectId, input = {}, options) {
|
|
20
|
+
return transport.request("GET", `/projects/${trackingId(projectId, "prj")}/ai-tracking/prompts`, { ...options, query: { ...input } });
|
|
21
|
+
},
|
|
22
|
+
createAiTrackingPrompt(projectId, input, options) {
|
|
23
|
+
validateTrackingInput(input);
|
|
24
|
+
return transport.request("POST", `/projects/${trackingId(projectId, "prj")}/ai-tracking/prompts`, { ...options, body: input });
|
|
25
|
+
},
|
|
26
|
+
updateAiTrackingPrompt(projectId, id, input, options) {
|
|
27
|
+
validateTrackingInput(input);
|
|
28
|
+
return transport.request("PATCH", `/projects/${trackingId(projectId, "prj")}/ai-tracking/prompts/${trackingId(id, "aip")}`, { ...options, body: input });
|
|
29
|
+
},
|
|
30
|
+
archiveAiTrackingPrompt(projectId, id, options) {
|
|
31
|
+
return transport.request("DELETE", `/projects/${trackingId(projectId, "prj")}/ai-tracking/prompts/${trackingId(id, "aip")}`, { ...options });
|
|
32
|
+
},
|
|
33
|
+
listAiTrackingSchedules(projectId, input = {}, options) {
|
|
34
|
+
return transport.request("GET", `/projects/${trackingId(projectId, "prj")}/ai-tracking/schedules`, { ...options, query: { ...input } });
|
|
35
|
+
},
|
|
36
|
+
createAiTrackingSchedule(projectId, input, options) {
|
|
37
|
+
validateTrackingInput(input);
|
|
38
|
+
return transport.request("POST", `/projects/${trackingId(projectId, "prj")}/ai-tracking/schedules`, { ...options, body: input });
|
|
39
|
+
},
|
|
40
|
+
updateAiTrackingSchedule(projectId, id, input, options) {
|
|
41
|
+
validateTrackingInput(input);
|
|
42
|
+
return transport.request("PATCH", `/projects/${trackingId(projectId, "prj")}/ai-tracking/schedules/${trackingId(id, "ais")}`, { ...options, body: input });
|
|
43
|
+
},
|
|
44
|
+
archiveAiTrackingSchedule(projectId, id, options) {
|
|
45
|
+
return transport.request("DELETE", `/projects/${trackingId(projectId, "prj")}/ai-tracking/schedules/${trackingId(id, "ais")}`, { ...options });
|
|
46
|
+
},
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=ai-tracking-catalog-methods.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-tracking-catalog-methods.js","sourceRoot":"","sources":["../src/ai-tracking-catalog-methods.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { TrackingTransport } from "./ai-tracking-transport.js";
|
|
2
|
+
import type { BisibilityClient } from "./client.js";
|
|
3
|
+
export declare function createAiTrackingMethods(transport: TrackingTransport): {
|
|
4
|
+
aiTrackingSuggestionsPreview(projectId: import("./types.js").ProjectId, input: import("./ai-tracking-suggestions.js").AiTrackingSuggestionsPreviewInput, options?: import("./types.js").RequestOptions): Promise<import("./types.js").DataResponse<import("./ai-tracking-suggestions.js").AiTrackingSuggestionsPreview>>;
|
|
5
|
+
aiTrackingSuggestionsGenerate(projectId: import("./types.js").ProjectId, input: import("./ai-tracking-suggestions.js").AiTrackingSuggestionsGenerateInput, options?: import("./types.js").RequestOptions): Promise<import("./types.js").DataResponse<import("./ai-tracking-suggestions.js").AiTrackingSuggestionsGeneration>>;
|
|
6
|
+
previewAiTrackingRun(projectId: import("./types.js").ProjectId, input: import("./ai-tracking.js").AiTrackingPreviewInput, options?: import("./types.js").RequestOptions): Promise<import("./types.js").DataResponse<import("./ai-tracking.js").AiTrackingPreview>>;
|
|
7
|
+
createAiTrackingRun(projectId: import("./types.js").ProjectId, input: import("./ai-tracking.js").AiTrackingRunInput, options?: import("./types.js").RequestOptions): Promise<import("./types.js").DataResponse<import("./ai-tracking.js").AiTrackingRun>>;
|
|
8
|
+
listAiTrackingRuns(projectId: import("./types.js").ProjectId, input?: import("./types.js").PaginationOptions, options?: import("./types.js").RequestOptions): Promise<import("./types.js").ListResponse<import("./ai-tracking.js").AiTrackingRun>>;
|
|
9
|
+
getAiTrackingRun(projectId: import("./types.js").ProjectId, id: import("./ai-tracking.js").AiTrackingRunId, options?: import("./types.js").RequestOptions): Promise<import("./types.js").DataResponse<import("./ai-tracking.js").AiTrackingRun>>;
|
|
10
|
+
listAiTrackingSamples(projectId: import("./types.js").ProjectId, id: import("./ai-tracking.js").AiTrackingRunId, input?: import("./types.js").PaginationOptions, options?: import("./types.js").RequestOptions): Promise<import("./types.js").ListResponse<import("./ai-tracking.js").AiTrackingSample>>;
|
|
11
|
+
cancelAiTrackingRun(projectId: import("./types.js").ProjectId, id: import("./ai-tracking.js").AiTrackingRunId, options?: import("./types.js").RequestOptions): Promise<import("./types.js").DataResponse<import("./ai-tracking.js").AiTrackingRun>>;
|
|
12
|
+
retryAiTrackingRun(projectId: import("./types.js").ProjectId, id: import("./ai-tracking.js").AiTrackingRunId, input: import("./ai-tracking.js").AiTrackingRunInput, options?: import("./types.js").RequestOptions): Promise<import("./types.js").DataResponse<import("./ai-tracking.js").AiTrackingRun>>;
|
|
13
|
+
getAiTrackingHistory(projectId: import("./types.js").ProjectId, input?: import("./types.js").PaginationOptions, options?: import("./types.js").RequestOptions): Promise<import("./types.js").ListResponse<import("./ai-tracking.js").AiTrackingRun>>;
|
|
14
|
+
getAiTrackingTrends(projectId: import("./types.js").ProjectId, input: import("./ai-tracking.js").AiTrackingTrendOptions, options?: import("./types.js").RequestOptions): Promise<import("./types.js").DataResponse<import("./ai-tracking.js").AiTrackingTrends>>;
|
|
15
|
+
exportAiTrackingEvidence(projectId: import("./types.js").ProjectId, input: import("./ai-tracking.js").AiTrackingEvidenceOptions, options?: import("./types.js").RequestOptions): Promise<string | import("./types.js").DataResponse<import("./ai-tracking.js").AiTrackingExport>>;
|
|
16
|
+
suggestAiTrackingPrompts(projectId: import("./types.js").ProjectId, options?: import("./types.js").RequestOptions): Promise<import("./types.js").DataResponse<import("./ai-tracking.js").AiTrackingSuggestions>>;
|
|
17
|
+
acceptAiTrackingSuggestions(projectId: import("./types.js").ProjectId, input: import("./ai-tracking.js").AiTrackingAcceptanceInput, options?: import("./types.js").RequestOptions): Promise<import("./types.js").DataResponse<{
|
|
18
|
+
prompts: import("./ai-tracking.js").AiTrackingPrompt[];
|
|
19
|
+
}>>;
|
|
20
|
+
listAiTrackingTopics(projectId: import("./types.js").ProjectId, input?: import("./types.js").PaginationOptions, options?: import("./types.js").RequestOptions): Promise<import("./types.js").ListResponse<import("./ai-tracking.js").AiTrackingTopic>>;
|
|
21
|
+
createAiTrackingTopic(projectId: import("./types.js").ProjectId, input: import("./ai-tracking.js").AiTrackingTopicInput, options?: import("./types.js").RequestOptions): Promise<import("./types.js").DataResponse<import("./ai-tracking.js").AiTrackingTopic>>;
|
|
22
|
+
updateAiTrackingTopic(projectId: import("./types.js").ProjectId, id: import("./ai-tracking.js").AiTrackingTopicId, input: Partial<import("./ai-tracking.js").AiTrackingTopicInput>, options?: import("./types.js").RequestOptions): Promise<import("./types.js").DataResponse<import("./ai-tracking.js").AiTrackingTopic>>;
|
|
23
|
+
archiveAiTrackingTopic(projectId: import("./types.js").ProjectId, id: import("./ai-tracking.js").AiTrackingTopicId, options?: import("./types.js").RequestOptions): Promise<import("./types.js").DataResponse<import("./ai-tracking.js").AiTrackingTopic>>;
|
|
24
|
+
listAiTrackingPrompts(projectId: import("./types.js").ProjectId, input?: import("./types.js").PaginationOptions, options?: import("./types.js").RequestOptions): Promise<import("./types.js").ListResponse<import("./ai-tracking.js").AiTrackingPrompt>>;
|
|
25
|
+
createAiTrackingPrompt(projectId: import("./types.js").ProjectId, input: import("./ai-tracking.js").AiTrackingPromptInput, options?: import("./types.js").RequestOptions): Promise<import("./types.js").DataResponse<import("./ai-tracking.js").AiTrackingPrompt>>;
|
|
26
|
+
updateAiTrackingPrompt(projectId: import("./types.js").ProjectId, id: import("./ai-tracking.js").AiTrackingPromptId, input: Partial<import("./ai-tracking.js").AiTrackingPromptInput>, options?: import("./types.js").RequestOptions): Promise<import("./types.js").DataResponse<import("./ai-tracking.js").AiTrackingPrompt>>;
|
|
27
|
+
archiveAiTrackingPrompt(projectId: import("./types.js").ProjectId, id: import("./ai-tracking.js").AiTrackingPromptId, options?: import("./types.js").RequestOptions): Promise<import("./types.js").DataResponse<import("./ai-tracking.js").AiTrackingPrompt>>;
|
|
28
|
+
listAiTrackingSchedules(projectId: import("./types.js").ProjectId, input?: import("./types.js").PaginationOptions, options?: import("./types.js").RequestOptions): Promise<import("./types.js").ListResponse<import("./ai-tracking.js").AiTrackingSchedule>>;
|
|
29
|
+
createAiTrackingSchedule(projectId: import("./types.js").ProjectId, input: import("./ai-tracking.js").AiTrackingScheduleInput, options?: import("./types.js").RequestOptions): Promise<import("./types.js").DataResponse<import("./ai-tracking.js").AiTrackingSchedule>>;
|
|
30
|
+
updateAiTrackingSchedule(projectId: import("./types.js").ProjectId, id: import("./ai-tracking.js").AiTrackingScheduleId, input: import("./ai-tracking.js").AiTrackingSchedulePatch, options?: import("./types.js").RequestOptions): Promise<import("./types.js").DataResponse<import("./ai-tracking.js").AiTrackingSchedule>>;
|
|
31
|
+
archiveAiTrackingSchedule(projectId: import("./types.js").ProjectId, id: import("./ai-tracking.js").AiTrackingScheduleId, options?: import("./types.js").RequestOptions): Promise<import("./types.js").DataResponse<import("./ai-tracking.js").AiTrackingSchedule>>;
|
|
32
|
+
};
|
|
33
|
+
export type AiTrackingMethods = ReturnType<typeof createAiTrackingMethods>;
|
|
34
|
+
export declare function installAiTrackingMethods(client: BisibilityClient, transport: TrackingTransport): void;
|
|
35
|
+
//# sourceMappingURL=ai-tracking-methods.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-tracking-methods.d.ts","sourceRoot":"","sources":["../src/ai-tracking-methods.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpD,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMnE;AACD,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAC3E,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,gBAAgB,EAAE,SAAS,EAAE,iBAAiB,QAG9F"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { createAiTrackingCatalogMethods } from "./ai-tracking-catalog-methods.js";
|
|
2
|
+
import { createAiTrackingRunMethods } from "./ai-tracking-run-methods.js";
|
|
3
|
+
import { createAiTrackingSuggestionMethods } from "./ai-tracking-suggestion-methods.js";
|
|
4
|
+
export function createAiTrackingMethods(transport) {
|
|
5
|
+
return {
|
|
6
|
+
...createAiTrackingCatalogMethods(transport),
|
|
7
|
+
...createAiTrackingRunMethods(transport),
|
|
8
|
+
...createAiTrackingSuggestionMethods(transport),
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
export function installAiTrackingMethods(client, transport) {
|
|
12
|
+
for (const [name, method] of Object.entries(createAiTrackingMethods(transport)))
|
|
13
|
+
Object.defineProperty(client, name, { value: method, configurable: false, enumerable: false });
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=ai-tracking-methods.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-tracking-methods.js","sourceRoot":"","sources":["../src/ai-tracking-methods.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,iCAAiC,EAAE,MAAM,qCAAqC,CAAC;AAIxF,MAAM,UAAU,uBAAuB,CAAC,SAA4B;IAClE,OAAO;QACL,GAAG,8BAA8B,CAAC,SAAS,CAAC;QAC5C,GAAG,0BAA0B,CAAC,SAAS,CAAC;QACxC,GAAG,iCAAiC,CAAC,SAAS,CAAC;KAChD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,MAAwB,EAAE,SAA4B;IAC7F,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;QAC7E,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;AACnG,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { AiTrackingAcceptanceInput, AiTrackingEvidenceOptions, AiTrackingExport, AiTrackingPreview, AiTrackingPreviewInput, AiTrackingPrompt, AiTrackingRun, AiTrackingRunId, AiTrackingRunInput, AiTrackingSample, AiTrackingSuggestions, AiTrackingTrendOptions, AiTrackingTrends } from "./ai-tracking.js";
|
|
2
|
+
import type { DataResponse, ListResponse, PaginationOptions, ProjectId, RequestOptions } from "./types.js";
|
|
3
|
+
import { type TrackingTransport } from "./ai-tracking-transport.js";
|
|
4
|
+
export declare function createAiTrackingRunMethods(transport: TrackingTransport): {
|
|
5
|
+
previewAiTrackingRun(projectId: ProjectId, input: AiTrackingPreviewInput, options?: RequestOptions): Promise<DataResponse<AiTrackingPreview>>;
|
|
6
|
+
createAiTrackingRun(projectId: ProjectId, input: AiTrackingRunInput, options?: RequestOptions): Promise<DataResponse<AiTrackingRun>>;
|
|
7
|
+
listAiTrackingRuns(projectId: ProjectId, input?: PaginationOptions, options?: RequestOptions): Promise<ListResponse<AiTrackingRun>>;
|
|
8
|
+
getAiTrackingRun(projectId: ProjectId, id: AiTrackingRunId, options?: RequestOptions): Promise<DataResponse<AiTrackingRun>>;
|
|
9
|
+
listAiTrackingSamples(projectId: ProjectId, id: AiTrackingRunId, input?: PaginationOptions, options?: RequestOptions): Promise<ListResponse<AiTrackingSample>>;
|
|
10
|
+
cancelAiTrackingRun(projectId: ProjectId, id: AiTrackingRunId, options?: RequestOptions): Promise<DataResponse<AiTrackingRun>>;
|
|
11
|
+
retryAiTrackingRun(projectId: ProjectId, id: AiTrackingRunId, input: AiTrackingRunInput, options?: RequestOptions): Promise<DataResponse<AiTrackingRun>>;
|
|
12
|
+
getAiTrackingHistory(projectId: ProjectId, input?: PaginationOptions, options?: RequestOptions): Promise<ListResponse<AiTrackingRun>>;
|
|
13
|
+
getAiTrackingTrends(projectId: ProjectId, input: AiTrackingTrendOptions, options?: RequestOptions): Promise<DataResponse<AiTrackingTrends>>;
|
|
14
|
+
exportAiTrackingEvidence(projectId: ProjectId, input: AiTrackingEvidenceOptions, options?: RequestOptions): Promise<string | DataResponse<AiTrackingExport>>;
|
|
15
|
+
suggestAiTrackingPrompts(projectId: ProjectId, options?: RequestOptions): Promise<DataResponse<AiTrackingSuggestions>>;
|
|
16
|
+
acceptAiTrackingSuggestions(projectId: ProjectId, input: AiTrackingAcceptanceInput, options?: RequestOptions): Promise<DataResponse<{
|
|
17
|
+
prompts: AiTrackingPrompt[];
|
|
18
|
+
}>>;
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=ai-tracking-run-methods.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-tracking-run-methods.d.ts","sourceRoot":"","sources":["../src/ai-tracking-run-methods.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,yBAAyB,EACzB,yBAAyB,EACzB,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,gBAAgB,EAGhB,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAIhB,qBAAqB,EAIrB,sBAAsB,EACtB,gBAAgB,EACjB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,cAAc,EACf,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,KAAK,iBAAiB,EAGvB,MAAM,4BAA4B,CAAC;AAEpC,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,iBAAiB;oCAGtD,SAAS,SACb,sBAAsB,YACnB,cAAc;mCASK,SAAS,SAAS,kBAAkB,YAAY,cAAc;kCAahF,SAAS,UACb,iBAAiB,YACd,cAAc;gCAQE,SAAS,MAAM,eAAe,YAAY,cAAc;qCAQvE,SAAS,MAChB,eAAe,UACZ,iBAAiB,YACd,cAAc;mCAQK,SAAS,MAAM,eAAe,YAAY,cAAc;kCAQ1E,SAAS,MAChB,eAAe,SACZ,kBAAkB,YACf,cAAc;oCAcb,SAAS,UACb,iBAAiB,YACd,cAAc;mCASb,SAAS,SACb,sBAAsB,YACnB,cAAc;wCAWb,SAAS,SACb,yBAAyB,YACtB,cAAc;wCASU,SAAS,YAAY,cAAc;2CAQ1D,SAAS,SACb,yBAAyB,YACtB,cAAc;iBAGyB,gBAAgB,EAAE;;EAOxE"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { BisibilityConfigurationError } from "./errors.js";
|
|
2
|
+
import { trackingId, validateTrackingInput, } from "./ai-tracking-transport.js";
|
|
3
|
+
export function createAiTrackingRunMethods(transport) {
|
|
4
|
+
return {
|
|
5
|
+
previewAiTrackingRun(projectId, input, options) {
|
|
6
|
+
validateTrackingInput(input);
|
|
7
|
+
return transport.request("POST", `/projects/${trackingId(projectId, "prj")}/ai-tracking/runs/preview`, { ...options, body: input });
|
|
8
|
+
},
|
|
9
|
+
createAiTrackingRun(projectId, input, options) {
|
|
10
|
+
validateTrackingInput(input);
|
|
11
|
+
if (input.consent !== true)
|
|
12
|
+
throw new BisibilityConfigurationError("Explicit tracking consent is required.");
|
|
13
|
+
if (!options?.idempotencyKey)
|
|
14
|
+
throw new BisibilityConfigurationError("Idempotency-Key is required for tracking launch.");
|
|
15
|
+
return transport.request("POST", `/projects/${trackingId(projectId, "prj")}/ai-tracking/runs`, { ...options, body: input });
|
|
16
|
+
},
|
|
17
|
+
listAiTrackingRuns(projectId, input = {}, options) {
|
|
18
|
+
return transport.request("GET", `/projects/${trackingId(projectId, "prj")}/ai-tracking/runs`, { ...options, query: { ...input } });
|
|
19
|
+
},
|
|
20
|
+
getAiTrackingRun(projectId, id, options) {
|
|
21
|
+
return transport.request("GET", `/projects/${trackingId(projectId, "prj")}/ai-tracking/runs/${trackingId(id, "air")}`, { ...options });
|
|
22
|
+
},
|
|
23
|
+
listAiTrackingSamples(projectId, id, input = {}, options) {
|
|
24
|
+
return transport.request("GET", `/projects/${trackingId(projectId, "prj")}/ai-tracking/runs/${trackingId(id, "air")}/samples`, { ...options, query: { ...input } });
|
|
25
|
+
},
|
|
26
|
+
cancelAiTrackingRun(projectId, id, options) {
|
|
27
|
+
return transport.request("POST", `/projects/${trackingId(projectId, "prj")}/ai-tracking/runs/${trackingId(id, "air")}/cancel`, { ...options });
|
|
28
|
+
},
|
|
29
|
+
retryAiTrackingRun(projectId, id, input, options) {
|
|
30
|
+
validateTrackingInput(input);
|
|
31
|
+
if (input.consent !== true)
|
|
32
|
+
throw new BisibilityConfigurationError("Explicit tracking consent is required.");
|
|
33
|
+
if (!options?.idempotencyKey)
|
|
34
|
+
throw new BisibilityConfigurationError("Idempotency-Key is required for tracking retry.");
|
|
35
|
+
return transport.request("POST", `/projects/${trackingId(projectId, "prj")}/ai-tracking/runs/${trackingId(id, "air")}/retry`, { ...options, body: input });
|
|
36
|
+
},
|
|
37
|
+
getAiTrackingHistory(projectId, input = {}, options) {
|
|
38
|
+
return transport.request("GET", `/projects/${trackingId(projectId, "prj")}/ai-tracking/history`, { ...options, query: { ...input } });
|
|
39
|
+
},
|
|
40
|
+
getAiTrackingTrends(projectId, input, options) {
|
|
41
|
+
trackingId(input.run_id, "air");
|
|
42
|
+
if (input.previous_run_id)
|
|
43
|
+
trackingId(input.previous_run_id, "air");
|
|
44
|
+
return transport.request("GET", `/projects/${trackingId(projectId, "prj")}/ai-tracking/trends`, { ...options, query: { ...input } });
|
|
45
|
+
},
|
|
46
|
+
exportAiTrackingEvidence(projectId, input, options) {
|
|
47
|
+
trackingId(input.run_id, "air");
|
|
48
|
+
return transport.request("GET", `/projects/${trackingId(projectId, "prj")}/ai-tracking/export`, { ...options, query: { ...input }, parseAs: input.format === "csv" ? "text" : "json" });
|
|
49
|
+
},
|
|
50
|
+
suggestAiTrackingPrompts(projectId, options) {
|
|
51
|
+
return transport.request("POST", `/projects/${trackingId(projectId, "prj")}/ai-tracking/suggestions`, { ...options, body: {} });
|
|
52
|
+
},
|
|
53
|
+
acceptAiTrackingSuggestions(projectId, input, options) {
|
|
54
|
+
validateTrackingInput(input);
|
|
55
|
+
return transport.request("POST", `/projects/${trackingId(projectId, "prj")}/ai-tracking/suggestions/accept`, { ...options, body: input });
|
|
56
|
+
},
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=ai-tracking-run-methods.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-tracking-run-methods.js","sourceRoot":"","sources":["../src/ai-tracking-run-methods.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { AiTrackingSuggestionSnapshot, AiTrackingSuggestionsGenerateInput, AiTrackingSuggestionsGeneration, AiTrackingSuggestionsPreview, AiTrackingSuggestionsPreviewInput } from "./ai-tracking-suggestions.js";
|
|
2
|
+
import { type TrackingTransport } from "./ai-tracking-transport.js";
|
|
3
|
+
import type { DataResponse, ProjectId, RequestOptions } from "./types.js";
|
|
4
|
+
export declare function validateSuggestionSnapshot(snapshot: AiTrackingSuggestionSnapshot): void;
|
|
5
|
+
export declare function createAiTrackingSuggestionMethods(transport: TrackingTransport): {
|
|
6
|
+
aiTrackingSuggestionsPreview(projectId: ProjectId, input: AiTrackingSuggestionsPreviewInput, options?: RequestOptions): Promise<DataResponse<AiTrackingSuggestionsPreview>>;
|
|
7
|
+
aiTrackingSuggestionsGenerate(projectId: ProjectId, input: AiTrackingSuggestionsGenerateInput, options?: RequestOptions): Promise<DataResponse<AiTrackingSuggestionsGeneration>>;
|
|
8
|
+
};
|
|
9
|
+
//# sourceMappingURL=ai-tracking-suggestion-methods.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-tracking-suggestion-methods.d.ts","sourceRoot":"","sources":["../src/ai-tracking-suggestion-methods.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,4BAA4B,EAC5B,kCAAkC,EAClC,+BAA+B,EAC/B,4BAA4B,EAC5B,iCAAiC,EAClC,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,KAAK,iBAAiB,EAAc,MAAM,4BAA4B,CAAC;AAEhF,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE1E,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,4BAA4B,GAAG,IAAI,CAmBvF;AACD,wBAAgB,iCAAiC,CAAC,SAAS,EAAE,iBAAiB;4CAG7D,SAAS,SACb,iCAAiC,YAC9B,cAAc;6CAWb,SAAS,SACb,kCAAkC,YAC/B,cAAc;EAsB7B"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { trackingId } from "./ai-tracking-transport.js";
|
|
2
|
+
import { BisibilityConfigurationError } from "./errors.js";
|
|
3
|
+
export function validateSuggestionSnapshot(snapshot) {
|
|
4
|
+
if (new Set(snapshot.competitors.map((competitor) => competitor.id)).size !==
|
|
5
|
+
snapshot.competitors.length)
|
|
6
|
+
throw new BisibilityConfigurationError("Reviewed competitors must have unique public IDs.");
|
|
7
|
+
for (const competitor of snapshot.competitors)
|
|
8
|
+
trackingId(competitor.id, "cmp");
|
|
9
|
+
const { agent_rules, ...context } = snapshot.context;
|
|
10
|
+
if (Array.from(JSON.stringify({
|
|
11
|
+
context: { ...context, agentRules: agent_rules },
|
|
12
|
+
competitors: snapshot.competitors,
|
|
13
|
+
})).length > 5000)
|
|
14
|
+
throw new BisibilityConfigurationError("Reviewed input snapshot exceeds 5000 serialized characters.");
|
|
15
|
+
}
|
|
16
|
+
export function createAiTrackingSuggestionMethods(transport) {
|
|
17
|
+
return {
|
|
18
|
+
aiTrackingSuggestionsPreview(projectId, input, options) {
|
|
19
|
+
validateSuggestionSnapshot(input.input_snapshot);
|
|
20
|
+
if (input.credential_connection_id)
|
|
21
|
+
trackingId(input.credential_connection_id, "conn");
|
|
22
|
+
return transport.request("POST", `/projects/${trackingId(projectId, "prj")}/ai-tracking/suggestions/preview`, { ...options, body: input });
|
|
23
|
+
},
|
|
24
|
+
aiTrackingSuggestionsGenerate(projectId, input, options) {
|
|
25
|
+
validateSuggestionSnapshot(input.preview.input_snapshot);
|
|
26
|
+
trackingId(input.preview.credential_connection_id, "conn");
|
|
27
|
+
if (input.consent !== true)
|
|
28
|
+
throw new BisibilityConfigurationError("Explicit model generation consent is required.");
|
|
29
|
+
if (!options?.idempotencyKey ||
|
|
30
|
+
!/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(options.idempotencyKey))
|
|
31
|
+
throw new BisibilityConfigurationError("A stable UUID Idempotency-Key is required for model generation.");
|
|
32
|
+
return transport.request("POST", `/projects/${trackingId(projectId, "prj")}/ai-tracking/suggestions/generate`, { ...options, body: input });
|
|
33
|
+
},
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=ai-tracking-suggestion-methods.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-tracking-suggestion-methods.js","sourceRoot":"","sources":["../src/ai-tracking-suggestion-methods.ts"],"names":[],"mappings":"AAOA,OAAO,EAA0B,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAChF,OAAO,EAAE,4BAA4B,EAAE,MAAM,aAAa,CAAC;AAG3D,MAAM,UAAU,0BAA0B,CAAC,QAAsC;IAC/E,IACE,IAAI,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;QACrE,QAAQ,CAAC,WAAW,CAAC,MAAM;QAE3B,MAAM,IAAI,4BAA4B,CAAC,mDAAmD,CAAC,CAAC;IAC9F,KAAK,MAAM,UAAU,IAAI,QAAQ,CAAC,WAAW;QAAE,UAAU,CAAC,UAAU,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IAChF,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC;IACrD,IACE,KAAK,CAAC,IAAI,CACR,IAAI,CAAC,SAAS,CAAC;QACb,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE;QAChD,WAAW,EAAE,QAAQ,CAAC,WAAW;KAClC,CAAC,CACH,CAAC,MAAM,GAAG,IAAI;QAEf,MAAM,IAAI,4BAA4B,CACpC,6DAA6D,CAC9D,CAAC;AACN,CAAC;AACD,MAAM,UAAU,iCAAiC,CAAC,SAA4B;IAC5E,OAAO;QACL,4BAA4B,CAC1B,SAAoB,EACpB,KAAwC,EACxC,OAAwB;YAExB,0BAA0B,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YACjD,IAAI,KAAK,CAAC,wBAAwB;gBAAE,UAAU,CAAC,KAAK,CAAC,wBAAwB,EAAE,MAAM,CAAC,CAAC;YACvF,OAAO,SAAS,CAAC,OAAO,CACtB,MAAM,EACN,aAAa,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,kCAAkC,EAC3E,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAC5B,CAAC;QACJ,CAAC;QACD,6BAA6B,CAC3B,SAAoB,EACpB,KAAyC,EACzC,OAAwB;YAExB,0BAA0B,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;YACzD,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,wBAAwB,EAAE,MAAM,CAAC,CAAC;YAC3D,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI;gBACxB,MAAM,IAAI,4BAA4B,CAAC,gDAAgD,CAAC,CAAC;YAC3F,IACE,CAAC,OAAO,EAAE,cAAc;gBACxB,CAAC,iEAAiE,CAAC,IAAI,CACrE,OAAO,CAAC,cAAc,CACvB;gBAED,MAAM,IAAI,4BAA4B,CACpC,iEAAiE,CAClE,CAAC;YACJ,OAAO,SAAS,CAAC,OAAO,CACtB,MAAM,EACN,aAAa,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,mCAAmC,EAC5E,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAC5B,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
export interface AiTrackingSuggestionConfiguration {
|
|
2
|
+
provider: "dataforseo";
|
|
3
|
+
engine: "chat_gpt";
|
|
4
|
+
model: string;
|
|
5
|
+
language_code: string;
|
|
6
|
+
country_iso_code?: string;
|
|
7
|
+
max_output_tokens: number;
|
|
8
|
+
advisory_cost_limit_cents: number;
|
|
9
|
+
}
|
|
10
|
+
export interface AiTrackingSuggestionSnapshot {
|
|
11
|
+
context: {
|
|
12
|
+
business: string;
|
|
13
|
+
audience: string;
|
|
14
|
+
products: string;
|
|
15
|
+
goals: string;
|
|
16
|
+
agent_rules: string;
|
|
17
|
+
};
|
|
18
|
+
competitors: Array<{
|
|
19
|
+
id: `cmp_${string}`;
|
|
20
|
+
label: string | null;
|
|
21
|
+
domain: string;
|
|
22
|
+
}>;
|
|
23
|
+
}
|
|
24
|
+
export interface AiTrackingSuggestionsPreviewInput {
|
|
25
|
+
configuration: AiTrackingSuggestionConfiguration;
|
|
26
|
+
input_snapshot: AiTrackingSuggestionSnapshot;
|
|
27
|
+
credential_connection_id?: `conn_${string}`;
|
|
28
|
+
}
|
|
29
|
+
export interface AiTrackingSuggestionsPreview extends AiTrackingSuggestionsPreviewInput {
|
|
30
|
+
version: 1;
|
|
31
|
+
snapshot_hash: string;
|
|
32
|
+
estimated_cost_cents: number;
|
|
33
|
+
estimate_kind: "forecast";
|
|
34
|
+
is_guaranteed_maximum: false;
|
|
35
|
+
credential_connection_id: `conn_${string}`;
|
|
36
|
+
credential_version: string;
|
|
37
|
+
budget_revision: string;
|
|
38
|
+
consent_revision: string;
|
|
39
|
+
expires_at: string;
|
|
40
|
+
limitations: string[];
|
|
41
|
+
}
|
|
42
|
+
export interface AiTrackingSuggestionsGenerateInput {
|
|
43
|
+
preview: AiTrackingSuggestionsPreview;
|
|
44
|
+
consent: true;
|
|
45
|
+
}
|
|
46
|
+
export interface AiTrackingModelSuggestion {
|
|
47
|
+
draft_id: string;
|
|
48
|
+
text: string;
|
|
49
|
+
category: "neutral" | "comparative" | "branded";
|
|
50
|
+
provenance: "model_generated_hypothesis";
|
|
51
|
+
evidence_ids: [];
|
|
52
|
+
popularity: null;
|
|
53
|
+
accepted: false;
|
|
54
|
+
}
|
|
55
|
+
export interface AiTrackingSuggestionsGeneration {
|
|
56
|
+
generation_id: `asg_${string}`;
|
|
57
|
+
drafts: AiTrackingModelSuggestion[];
|
|
58
|
+
cost_usd: string | null;
|
|
59
|
+
cost_state: "unknown" | "confirmed";
|
|
60
|
+
method: "model_generated_hypothesis";
|
|
61
|
+
limitations: string[];
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=ai-tracking-suggestions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-tracking-suggestions.d.ts","sourceRoot":"","sources":["../src/ai-tracking-suggestions.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,iCAAiC;IAChD,QAAQ,EAAE,YAAY,CAAC;IACvB,MAAM,EAAE,UAAU,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,yBAAyB,EAAE,MAAM,CAAC;CACnC;AACD,MAAM,WAAW,4BAA4B;IAC3C,OAAO,EAAE;QACP,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,WAAW,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,OAAO,MAAM,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACnF;AACD,MAAM,WAAW,iCAAiC;IAChD,aAAa,EAAE,iCAAiC,CAAC;IACjD,cAAc,EAAE,4BAA4B,CAAC;IAC7C,wBAAwB,CAAC,EAAE,QAAQ,MAAM,EAAE,CAAC;CAC7C;AACD,MAAM,WAAW,4BAA6B,SAAQ,iCAAiC;IACrF,OAAO,EAAE,CAAC,CAAC;IACX,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,aAAa,EAAE,UAAU,CAAC;IAC1B,qBAAqB,EAAE,KAAK,CAAC;IAC7B,wBAAwB,EAAE,QAAQ,MAAM,EAAE,CAAC;IAC3C,kBAAkB,EAAE,MAAM,CAAC;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AACD,MAAM,WAAW,kCAAkC;IACjD,OAAO,EAAE,4BAA4B,CAAC;IACtC,OAAO,EAAE,IAAI,CAAC;CACf;AACD,MAAM,WAAW,yBAAyB;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,SAAS,GAAG,aAAa,GAAG,SAAS,CAAC;IAChD,UAAU,EAAE,4BAA4B,CAAC;IACzC,YAAY,EAAE,EAAE,CAAC;IACjB,UAAU,EAAE,IAAI,CAAC;IACjB,QAAQ,EAAE,KAAK,CAAC;CACjB;AACD,MAAM,WAAW,+BAA+B;IAC9C,aAAa,EAAE,OAAO,MAAM,EAAE,CAAC;IAC/B,MAAM,EAAE,yBAAyB,EAAE,CAAC;IACpC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,SAAS,GAAG,WAAW,CAAC;IACpC,MAAM,EAAE,4BAA4B,CAAC;IACrC,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-tracking-suggestions.js","sourceRoot":"","sources":["../src/ai-tracking-suggestions.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { RequestOptions } from "./types.js";
|
|
2
|
+
export interface TrackingTransport {
|
|
3
|
+
request<T>(method: string, path: string, options?: RequestOptions & {
|
|
4
|
+
body?: unknown;
|
|
5
|
+
query?: Record<string, string | number | undefined>;
|
|
6
|
+
parseAs?: "text" | "json";
|
|
7
|
+
}): Promise<T>;
|
|
8
|
+
}
|
|
9
|
+
/** True when `value` is `<prefix>_` followed by a 24-character public ID body. */
|
|
10
|
+
export declare function hasPublicIdShape(value: string, prefix: string): boolean;
|
|
11
|
+
export declare function trackingId(value: string, prefix: string): string;
|
|
12
|
+
export declare function validateTrackingInput(input: unknown): void;
|
|
13
|
+
//# sourceMappingURL=ai-tracking-transport.d.ts.map
|