seo 0.12.1 → 0.13.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/PRIVACY.md +1 -1
- package/README.md +1 -1
- package/dist/cli.js +85 -85
- package/dist/cli.js.map +1 -1
- package/dist/{dist-GOZ_hkEB.js → dist-CLV_HXUd.js} +1 -1
- package/dist/dist-wzZsD_Fi.js +420 -0
- package/dist/dist-wzZsD_Fi.js.map +1 -0
- package/dist/{esm-Cyusbw2J.js → esm-BfNQ2FiC.js} +140 -176
- package/dist/esm-BfNQ2FiC.js.map +1 -0
- package/dist/index.d.ts +827 -788
- package/dist/index.js +334 -147
- package/dist/index.js.map +1 -1
- package/dist/mcp.d.ts +11 -11
- package/dist/mcp.js +506 -306
- package/dist/mcp.js.map +1 -1
- package/dist/provider-sdk.d.ts +26 -27
- package/package.json +17 -17
- package/skills/seo/SKILL.md +4 -3
- package/dist/dist-U5Io-lSG.js +0 -393
- package/dist/dist-U5Io-lSG.js.map +0 -1
- package/dist/esm-Cyusbw2J.js.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -6,7 +6,7 @@ import Libsql from "libsql";
|
|
|
6
6
|
import "htmlparser2";
|
|
7
7
|
import pino from "pino";
|
|
8
8
|
//#region packages/core/src/types/auth.d.ts
|
|
9
|
-
declare const tokenSchema: z.ZodObject<{
|
|
9
|
+
export declare const tokenSchema: z.ZodObject<{
|
|
10
10
|
provider: z.ZodLiteral<"google">;
|
|
11
11
|
account_email: z.ZodString;
|
|
12
12
|
scope: z.ZodString;
|
|
@@ -20,8 +20,8 @@ declare const tokenSchema: z.ZodObject<{
|
|
|
20
20
|
byo: "byo";
|
|
21
21
|
}>;
|
|
22
22
|
}, z.core.$strip>;
|
|
23
|
-
type StoredTokens = z.infer<typeof tokenSchema>;
|
|
24
|
-
declare const tokenStoreSchema: z.ZodObject<{
|
|
23
|
+
export type StoredTokens = z.infer<typeof tokenSchema>;
|
|
24
|
+
export declare const tokenStoreSchema: z.ZodObject<{
|
|
25
25
|
version: z.ZodLiteral<2>;
|
|
26
26
|
active_account: z.ZodString;
|
|
27
27
|
accounts: z.ZodArray<z.ZodObject<{
|
|
@@ -39,18 +39,18 @@ declare const tokenStoreSchema: z.ZodObject<{
|
|
|
39
39
|
}>;
|
|
40
40
|
}, z.core.$strip>>;
|
|
41
41
|
}, z.core.$strip>;
|
|
42
|
-
type StoredTokenStore = z.infer<typeof tokenStoreSchema>;
|
|
42
|
+
export type StoredTokenStore = z.infer<typeof tokenStoreSchema>;
|
|
43
43
|
//#endregion
|
|
44
44
|
//#region packages/core/src/types/config.d.ts
|
|
45
|
-
declare const providerPreferenceSchema: z.ZodEnum<{
|
|
45
|
+
export declare const providerPreferenceSchema: z.ZodEnum<{
|
|
46
46
|
cheap: "cheap";
|
|
47
47
|
authoritative: "authoritative";
|
|
48
48
|
}>;
|
|
49
|
-
declare const analyticsProviderSchema: z.ZodEnum<{
|
|
49
|
+
export declare const analyticsProviderSchema: z.ZodEnum<{
|
|
50
50
|
google: "google";
|
|
51
51
|
clicky: "clicky";
|
|
52
52
|
}>;
|
|
53
|
-
declare const analyticsConnectionSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
53
|
+
export declare const analyticsConnectionSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
54
54
|
provider: z.ZodLiteral<"google">;
|
|
55
55
|
propertyId: z.ZodString;
|
|
56
56
|
accountEmail: z.ZodOptional<z.ZodString>;
|
|
@@ -62,7 +62,7 @@ declare const analyticsConnectionSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
62
62
|
providerId: z.ZodString;
|
|
63
63
|
account: z.ZodRecord<z.ZodString, z.ZodString>;
|
|
64
64
|
}, z.core.$strip>], "provider">;
|
|
65
|
-
declare const configSchema: z.ZodObject<{
|
|
65
|
+
export declare const configSchema: z.ZodObject<{
|
|
66
66
|
providers: z.ZodDefault<z.ZodObject<{
|
|
67
67
|
dataForSeoLogin: z.ZodOptional<z.ZodString>;
|
|
68
68
|
dataForSeoPassword: z.ZodOptional<z.ZodString>;
|
|
@@ -80,9 +80,9 @@ declare const configSchema: z.ZodObject<{
|
|
|
80
80
|
sharedClientSecret: z.ZodOptional<z.ZodString>;
|
|
81
81
|
}, z.core.$strip>>;
|
|
82
82
|
}, z.core.$loose>;
|
|
83
|
-
type AppConfig = z.infer<typeof configSchema>;
|
|
84
|
-
type AnalyticsConnection = z.infer<typeof analyticsConnectionSchema>;
|
|
85
|
-
type AnalyticsProvider = z.infer<typeof analyticsProviderSchema>;
|
|
83
|
+
export type AppConfig = z.infer<typeof configSchema>;
|
|
84
|
+
export type AnalyticsConnection = z.infer<typeof analyticsConnectionSchema>;
|
|
85
|
+
export type AnalyticsProvider = z.infer<typeof analyticsProviderSchema>;
|
|
86
86
|
//#endregion
|
|
87
87
|
//#region packages/core/src/extract/canonical.d.ts
|
|
88
88
|
type CanonicalSource = 'html-head' | 'html-body' | 'http-header';
|
|
@@ -108,21 +108,21 @@ type CanonicalEvidence = {
|
|
|
108
108
|
};
|
|
109
109
|
//#endregion
|
|
110
110
|
//#region packages/core/src/types/pages.d.ts
|
|
111
|
-
interface GscRow {
|
|
111
|
+
export interface GscRow {
|
|
112
112
|
keys: string[];
|
|
113
113
|
clicks: number;
|
|
114
114
|
impressions: number;
|
|
115
115
|
ctr: number;
|
|
116
116
|
position: number;
|
|
117
117
|
}
|
|
118
|
-
type CrawlerIdentity = {
|
|
118
|
+
export type CrawlerIdentity = {
|
|
119
119
|
name: string;
|
|
120
120
|
robotsToken: string;
|
|
121
121
|
version: string;
|
|
122
122
|
userAgent: string;
|
|
123
123
|
documentationUrl: string;
|
|
124
124
|
};
|
|
125
|
-
type AccessBlockEvidence = {
|
|
125
|
+
export type AccessBlockEvidence = {
|
|
126
126
|
provider: 'cloudflare' | 'unknown';
|
|
127
127
|
kind: 'challenge' | 'firewall' | 'rate-limit' | 'authentication';
|
|
128
128
|
status: number;
|
|
@@ -136,7 +136,7 @@ type AccessBlockEvidence = {
|
|
|
136
136
|
documentationUrl?: string;
|
|
137
137
|
};
|
|
138
138
|
};
|
|
139
|
-
interface PageFetchResult {
|
|
139
|
+
export interface PageFetchResult {
|
|
140
140
|
url: string;
|
|
141
141
|
finalUrl: string;
|
|
142
142
|
status: number;
|
|
@@ -154,7 +154,7 @@ interface PageFetchResult {
|
|
|
154
154
|
matchedLine?: string;
|
|
155
155
|
};
|
|
156
156
|
}
|
|
157
|
-
interface PageFetchDiagnostics {
|
|
157
|
+
export interface PageFetchDiagnostics {
|
|
158
158
|
source: 'cache' | 'network' | 'rendered';
|
|
159
159
|
cache: 'hit' | 'miss' | 'bypass';
|
|
160
160
|
fetched: boolean;
|
|
@@ -228,8 +228,8 @@ interface PageFetchDiagnostics {
|
|
|
228
228
|
error?: string;
|
|
229
229
|
};
|
|
230
230
|
}
|
|
231
|
-
type RenderingDocumentField = 'title' | 'metaDescription' | 'canonical' | 'robots' | 'headings' | 'links' | 'content' | 'structuredData';
|
|
232
|
-
type RenderingDocumentSnapshot = {
|
|
231
|
+
export type RenderingDocumentField = 'title' | 'metaDescription' | 'canonical' | 'robots' | 'headings' | 'links' | 'content' | 'structuredData';
|
|
232
|
+
export type RenderingDocumentSnapshot = {
|
|
233
233
|
title?: string;
|
|
234
234
|
metaDescription?: string;
|
|
235
235
|
canonical: {
|
|
@@ -262,20 +262,20 @@ type RenderingDocumentSnapshot = {
|
|
|
262
262
|
schemaTypes: string[];
|
|
263
263
|
};
|
|
264
264
|
};
|
|
265
|
-
type RenderingDocumentDifference = {
|
|
265
|
+
export type RenderingDocumentDifference = {
|
|
266
266
|
raw: RenderingDocumentSnapshot;
|
|
267
267
|
rendered: RenderingDocumentSnapshot;
|
|
268
268
|
changed: RenderingDocumentField[];
|
|
269
269
|
};
|
|
270
|
-
interface CoverageField {
|
|
270
|
+
export interface CoverageField {
|
|
271
271
|
phraseCount: number;
|
|
272
272
|
matchedTerms: string[];
|
|
273
273
|
missingTerms: string[];
|
|
274
274
|
termCoverage: number;
|
|
275
275
|
}
|
|
276
|
-
type QueryContentClassification = 'covered' | 'serp-framing' | 'content-gap' | 'technical-check' | 'fetch-failed';
|
|
277
|
-
type QueryContentSignal = 'http-non-2xx' | 'http-no-content' | 'redirected' | 'fetch-incomplete' | 'exact-phrase-missing' | 'title-gap' | 'meta-description-gap' | 'h1-gap' | 'body-gap' | 'blocked' | 'meta-noindex' | 'x-robots-noindex' | 'canonical-mismatch';
|
|
278
|
-
interface QueryContentCoverage {
|
|
276
|
+
export type QueryContentClassification = 'covered' | 'serp-framing' | 'content-gap' | 'technical-check' | 'fetch-failed';
|
|
277
|
+
export type QueryContentSignal = 'http-non-2xx' | 'http-no-content' | 'redirected' | 'fetch-incomplete' | 'exact-phrase-missing' | 'title-gap' | 'meta-description-gap' | 'h1-gap' | 'body-gap' | 'blocked' | 'meta-noindex' | 'x-robots-noindex' | 'canonical-mismatch';
|
|
278
|
+
export interface QueryContentCoverage {
|
|
279
279
|
verifiedAt: string;
|
|
280
280
|
query: string;
|
|
281
281
|
url: string;
|
|
@@ -299,8 +299,8 @@ interface QueryContentCoverage {
|
|
|
299
299
|
recommendation: string;
|
|
300
300
|
summary: string;
|
|
301
301
|
}
|
|
302
|
-
type ContentExtractor = 'crawler' | 'defuddle' | 'readability';
|
|
303
|
-
interface ContentExtractionDiagnostics {
|
|
302
|
+
export type ContentExtractor = 'crawler' | 'defuddle' | 'readability';
|
|
303
|
+
export interface ContentExtractionDiagnostics {
|
|
304
304
|
requested: ContentExtractor;
|
|
305
305
|
used: ContentExtractor;
|
|
306
306
|
fallback: boolean;
|
|
@@ -316,9 +316,9 @@ interface ContentExtractionDiagnostics {
|
|
|
316
316
|
truncated: boolean;
|
|
317
317
|
};
|
|
318
318
|
}
|
|
319
|
-
type ExtractedLinkLocation = 'main-content' | 'navigation' | 'footer' | 'other';
|
|
320
|
-
type GoogleRichResultAssessmentStatus = 'no-required-properties' | 'required-properties-observed' | 'missing-required-properties' | 'retired' | 'not-assessed';
|
|
321
|
-
type GoogleRichResultAssessment = {
|
|
319
|
+
export type ExtractedLinkLocation = 'main-content' | 'navigation' | 'footer' | 'other';
|
|
320
|
+
export type GoogleRichResultAssessmentStatus = 'no-required-properties' | 'required-properties-observed' | 'missing-required-properties' | 'retired' | 'not-assessed';
|
|
321
|
+
export type GoogleRichResultAssessment = {
|
|
322
322
|
format: 'json-ld' | 'microdata' | 'rdfa';
|
|
323
323
|
block?: number;
|
|
324
324
|
path: string;
|
|
@@ -330,7 +330,7 @@ type GoogleRichResultAssessment = {
|
|
|
330
330
|
limitations: string[];
|
|
331
331
|
documentationUrl: string;
|
|
332
332
|
};
|
|
333
|
-
type GoogleRichResultAssessmentSelection = {
|
|
333
|
+
export type GoogleRichResultAssessmentSelection = {
|
|
334
334
|
limit: number;
|
|
335
335
|
eligible: number;
|
|
336
336
|
returned: number;
|
|
@@ -340,7 +340,7 @@ type GoogleRichResultAssessmentSelection = {
|
|
|
340
340
|
returnedByStatus: Record<GoogleRichResultAssessmentStatus, number>;
|
|
341
341
|
omittedByStatus: Record<GoogleRichResultAssessmentStatus, number>;
|
|
342
342
|
};
|
|
343
|
-
interface ExtractedPage {
|
|
343
|
+
export interface ExtractedPage {
|
|
344
344
|
url: string;
|
|
345
345
|
finalUrl: string;
|
|
346
346
|
title?: string;
|
|
@@ -424,7 +424,7 @@ interface ExtractedPage {
|
|
|
424
424
|
//#endregion
|
|
425
425
|
//#region packages/core/src/types/providers.d.ts
|
|
426
426
|
/** Calls and units one provider used during a report run. */
|
|
427
|
-
interface CreditUsage {
|
|
427
|
+
export interface CreditUsage {
|
|
428
428
|
provider: string;
|
|
429
429
|
units: number;
|
|
430
430
|
unitLabel: string;
|
|
@@ -454,7 +454,7 @@ type RuleDefinition = {
|
|
|
454
454
|
suggestedCommands?: string[];
|
|
455
455
|
};
|
|
456
456
|
};
|
|
457
|
-
type RuleRecommendation = 'fix' | 'review';
|
|
457
|
+
export type RuleRecommendation = 'fix' | 'review';
|
|
458
458
|
declare const RULE_DEFINITIONS: readonly [{
|
|
459
459
|
readonly id: "missing_title";
|
|
460
460
|
readonly title: "Title missing";
|
|
@@ -1233,17 +1233,17 @@ declare const RULE_DEFINITIONS: readonly [{
|
|
|
1233
1233
|
readonly evidenceFields: ["report.ai.markdownCopies.broken"];
|
|
1234
1234
|
};
|
|
1235
1235
|
}];
|
|
1236
|
-
type RuleId = (typeof RULE_DEFINITIONS)[number]['id'];
|
|
1237
|
-
type RuleInfo = RuleDefinition & {
|
|
1236
|
+
export type RuleId = (typeof RULE_DEFINITIONS)[number]['id'];
|
|
1237
|
+
export type RuleInfo = RuleDefinition & {
|
|
1238
1238
|
id: RuleId;
|
|
1239
1239
|
recommendation: RuleRecommendation;
|
|
1240
1240
|
};
|
|
1241
|
-
type RuleCategory = RuleDefinition['category'];
|
|
1242
|
-
type RuleSeverity = RuleDefinition['defaultSeverity'];
|
|
1243
|
-
declare function listRules(): RuleInfo[];
|
|
1244
|
-
declare function explainRule(ruleId: string): RuleInfo | undefined;
|
|
1245
|
-
declare function recommendationForRule(ruleId: string): RuleRecommendation;
|
|
1246
|
-
declare function hasRule(ruleId: string): ruleId is RuleId;
|
|
1241
|
+
export type RuleCategory = RuleDefinition['category'];
|
|
1242
|
+
export type RuleSeverity = RuleDefinition['defaultSeverity'];
|
|
1243
|
+
export declare function listRules(): RuleInfo[];
|
|
1244
|
+
export declare function explainRule(ruleId: string): RuleInfo | undefined;
|
|
1245
|
+
export declare function recommendationForRule(ruleId: string): RuleRecommendation;
|
|
1246
|
+
export declare function hasRule(ruleId: string): ruleId is RuleId;
|
|
1247
1247
|
//#endregion
|
|
1248
1248
|
//#region packages/core/src/brand-evidence.d.ts
|
|
1249
1249
|
type BrandQueryEvidence = {
|
|
@@ -1472,7 +1472,7 @@ type SecondPageReport = {
|
|
|
1472
1472
|
};
|
|
1473
1473
|
//#endregion
|
|
1474
1474
|
//#region packages/core/src/types/reports.d.ts
|
|
1475
|
-
interface Recommendation {
|
|
1475
|
+
export interface Recommendation {
|
|
1476
1476
|
principle: string;
|
|
1477
1477
|
evidenceRef: string;
|
|
1478
1478
|
action: string;
|
|
@@ -1480,7 +1480,7 @@ interface Recommendation {
|
|
|
1480
1480
|
confidence: 'high' | 'medium' | 'low';
|
|
1481
1481
|
impactEstimate?: string;
|
|
1482
1482
|
}
|
|
1483
|
-
interface AuditPageReport {
|
|
1483
|
+
export interface AuditPageReport {
|
|
1484
1484
|
url: string;
|
|
1485
1485
|
fetchedAt: string;
|
|
1486
1486
|
page: ExtractedPage;
|
|
@@ -1502,7 +1502,7 @@ interface AuditPageReport {
|
|
|
1502
1502
|
recommendations: Recommendation[];
|
|
1503
1503
|
warnings: string[];
|
|
1504
1504
|
}
|
|
1505
|
-
interface QueryCluster {
|
|
1505
|
+
export interface QueryCluster {
|
|
1506
1506
|
label: string;
|
|
1507
1507
|
intent: 'informational' | 'commercial' | 'transactional' | 'navigational' | 'mixed';
|
|
1508
1508
|
queries: Array<{
|
|
@@ -1542,7 +1542,7 @@ interface QueryCluster {
|
|
|
1542
1542
|
summary?: string;
|
|
1543
1543
|
recommendation?: string;
|
|
1544
1544
|
}
|
|
1545
|
-
interface CacheStats {
|
|
1545
|
+
export interface CacheStats {
|
|
1546
1546
|
dbPath: string;
|
|
1547
1547
|
sizeBytes: number;
|
|
1548
1548
|
logicalSizeBytes: number;
|
|
@@ -1551,17 +1551,17 @@ interface CacheStats {
|
|
|
1551
1551
|
}
|
|
1552
1552
|
//#endregion
|
|
1553
1553
|
//#region packages/core/src/analytics/providers.d.ts
|
|
1554
|
-
type AnalyticsProviderDetails = {
|
|
1554
|
+
export type AnalyticsProviderDetails = {
|
|
1555
1555
|
label: string;
|
|
1556
1556
|
landingMetricLabel: 'sessions' | 'landing-page visits';
|
|
1557
1557
|
};
|
|
1558
|
-
declare const ANALYTICS_PROVIDER_IDS: readonly ["google", "clicky"];
|
|
1559
|
-
declare function analyticsProviderDetails(provider: AnalyticsProvider | string): AnalyticsProviderDetails;
|
|
1560
|
-
declare function analyticsConnectionProviderId(connection: AnalyticsConnection): string;
|
|
1561
|
-
declare function analyticsConnectionLabel(connection: AnalyticsConnection): string;
|
|
1558
|
+
export declare const ANALYTICS_PROVIDER_IDS: readonly ["google", "clicky"];
|
|
1559
|
+
export declare function analyticsProviderDetails(provider: AnalyticsProvider | string): AnalyticsProviderDetails;
|
|
1560
|
+
export declare function analyticsConnectionProviderId(connection: AnalyticsConnection): string;
|
|
1561
|
+
export declare function analyticsConnectionLabel(connection: AnalyticsConnection): string;
|
|
1562
1562
|
//#endregion
|
|
1563
1563
|
//#region packages/core/src/analyze/agent-report.d.ts
|
|
1564
|
-
type AgentFindingStatus = 'open';
|
|
1564
|
+
export type AgentFindingStatus = 'open';
|
|
1565
1565
|
type AgentFindingBase = {
|
|
1566
1566
|
id: string;
|
|
1567
1567
|
status: AgentFindingStatus;
|
|
@@ -1589,14 +1589,14 @@ type AgentFindingBase = {
|
|
|
1589
1589
|
expected: string;
|
|
1590
1590
|
};
|
|
1591
1591
|
};
|
|
1592
|
-
type AgentFixFinding = AgentFindingBase & {
|
|
1592
|
+
export type AgentFixFinding = AgentFindingBase & {
|
|
1593
1593
|
type: 'fix';
|
|
1594
1594
|
fix: {
|
|
1595
1595
|
instruction: string;
|
|
1596
1596
|
};
|
|
1597
1597
|
allowedOutcomes: Array<'fixed' | 'deferred' | 'not-needed'>;
|
|
1598
1598
|
};
|
|
1599
|
-
type AgentReviewFinding = AgentFindingBase & {
|
|
1599
|
+
export type AgentReviewFinding = AgentFindingBase & {
|
|
1600
1600
|
type: 'review';
|
|
1601
1601
|
review: {
|
|
1602
1602
|
question: string;
|
|
@@ -1607,8 +1607,8 @@ type AgentReviewFinding = AgentFindingBase & {
|
|
|
1607
1607
|
};
|
|
1608
1608
|
allowedOutcomes: Array<'changed' | 'no-change' | 'deferred'>;
|
|
1609
1609
|
};
|
|
1610
|
-
type AgentFinding = AgentFixFinding | AgentReviewFinding;
|
|
1611
|
-
type AgentFindings = {
|
|
1610
|
+
export type AgentFinding = AgentFixFinding | AgentReviewFinding;
|
|
1611
|
+
export type AgentFindings = {
|
|
1612
1612
|
schemaVersion: 1;
|
|
1613
1613
|
scope: 'returned-report';
|
|
1614
1614
|
coverage: {
|
|
@@ -1634,7 +1634,7 @@ type AgentFindings = {
|
|
|
1634
1634
|
sourcePaths: string[];
|
|
1635
1635
|
items: AgentFinding[];
|
|
1636
1636
|
};
|
|
1637
|
-
type AgentReportInventory = {
|
|
1637
|
+
export type AgentReportInventory = {
|
|
1638
1638
|
id: string;
|
|
1639
1639
|
sourcePath: string;
|
|
1640
1640
|
title: string;
|
|
@@ -1657,31 +1657,31 @@ type AgentReportInventory = {
|
|
|
1657
1657
|
decisionStatus: 'open';
|
|
1658
1658
|
}>;
|
|
1659
1659
|
};
|
|
1660
|
-
type AgentReportOptions = {
|
|
1660
|
+
export type AgentReportOptions = {
|
|
1661
1661
|
reportId?: string;
|
|
1662
1662
|
verify?: string;
|
|
1663
1663
|
coverage?: AgentFindings['coverage']['state'];
|
|
1664
1664
|
preferRootActions?: boolean;
|
|
1665
1665
|
};
|
|
1666
1666
|
type JsonRecord = Record<string, unknown>;
|
|
1667
|
-
declare function buildAgentFindings(report: JsonRecord, options?: AgentReportOptions): {
|
|
1667
|
+
export declare function buildAgentFindings(report: JsonRecord, options?: AgentReportOptions): {
|
|
1668
1668
|
findings: AgentFindings;
|
|
1669
1669
|
inventories: AgentReportInventory[];
|
|
1670
1670
|
};
|
|
1671
|
-
declare function withAgentReportContract(report: JsonRecord, options?: AgentReportOptions): JsonRecord;
|
|
1672
|
-
declare function agentActionsView(report: JsonRecord, options?: AgentReportOptions): JsonRecord;
|
|
1671
|
+
export declare function withAgentReportContract(report: JsonRecord, options?: AgentReportOptions): JsonRecord;
|
|
1672
|
+
export declare function agentActionsView(report: JsonRecord, options?: AgentReportOptions): JsonRecord;
|
|
1673
1673
|
//#endregion
|
|
1674
1674
|
//#region packages/core/src/errors.d.ts
|
|
1675
|
-
type SeoErrorCode = 'ACCESS_DENIED' | 'AUTH_CONFIG_REQUIRED' | 'AUTH_EXPIRED' | 'AUTH_REQUIRED' | 'INSUFFICIENT_DATA' | 'INTERNAL_ERROR' | 'INVALID_INPUT' | 'OPTIONAL_PROVIDER_UNAVAILABLE' | 'PROPERTY_NOT_FOUND' | 'PROVIDER_UNAVAILABLE' | 'RATE_LIMITED';
|
|
1676
|
-
declare class SeoError extends Error {
|
|
1675
|
+
export type SeoErrorCode = 'ACCESS_DENIED' | 'AUTH_CONFIG_REQUIRED' | 'AUTH_EXPIRED' | 'AUTH_REQUIRED' | 'INSUFFICIENT_DATA' | 'INTERNAL_ERROR' | 'INVALID_INPUT' | 'OPTIONAL_PROVIDER_UNAVAILABLE' | 'PROPERTY_NOT_FOUND' | 'PROVIDER_UNAVAILABLE' | 'RATE_LIMITED';
|
|
1676
|
+
export declare class SeoError extends Error {
|
|
1677
1677
|
readonly code: SeoErrorCode;
|
|
1678
1678
|
readonly exitCode: number;
|
|
1679
1679
|
readonly retryable: boolean;
|
|
1680
1680
|
constructor(code: SeoErrorCode, message: string);
|
|
1681
1681
|
}
|
|
1682
|
-
declare function toSeoError(error: unknown): SeoError;
|
|
1683
|
-
declare function isSkippableReportError(error: unknown): boolean;
|
|
1684
|
-
declare function seoErrorEnvelope(error: unknown): {
|
|
1682
|
+
export declare function toSeoError(error: unknown): SeoError;
|
|
1683
|
+
export declare function isSkippableReportError(error: unknown): boolean;
|
|
1684
|
+
export declare function seoErrorEnvelope(error: unknown): {
|
|
1685
1685
|
ok: false;
|
|
1686
1686
|
error: {
|
|
1687
1687
|
code: SeoErrorCode;
|
|
@@ -1704,7 +1704,7 @@ interface Ga4AccountSummary {
|
|
|
1704
1704
|
}
|
|
1705
1705
|
//#endregion
|
|
1706
1706
|
//#region packages/core/src/gsc/client/types.d.ts
|
|
1707
|
-
interface SearchAnalyticsRequest {
|
|
1707
|
+
export interface SearchAnalyticsRequest {
|
|
1708
1708
|
startDate: string;
|
|
1709
1709
|
endDate: string;
|
|
1710
1710
|
dimensions?: string[];
|
|
@@ -1723,11 +1723,11 @@ interface SearchAnalyticsRequest {
|
|
|
1723
1723
|
}>;
|
|
1724
1724
|
}>;
|
|
1725
1725
|
}
|
|
1726
|
-
type SearchAnalyticsOptions = {
|
|
1726
|
+
export type SearchAnalyticsOptions = {
|
|
1727
1727
|
refresh?: boolean;
|
|
1728
1728
|
accountEmail?: string;
|
|
1729
1729
|
};
|
|
1730
|
-
type SearchAnalyticsResult = {
|
|
1730
|
+
export type SearchAnalyticsResult = {
|
|
1731
1731
|
rows: GscRow[];
|
|
1732
1732
|
calls: number;
|
|
1733
1733
|
rowsFetched: number;
|
|
@@ -1736,15 +1736,15 @@ type SearchAnalyticsResult = {
|
|
|
1736
1736
|
* Runs one Search Analytics query and follows pagination up to `maxRows`.
|
|
1737
1737
|
* The local binding adds the token store and the response cache.
|
|
1738
1738
|
*/
|
|
1739
|
-
type SearchAnalyticsQuery = (site: string, body: SearchAnalyticsRequest, opts?: SearchAnalyticsOptions) => Promise<SearchAnalyticsResult>;
|
|
1740
|
-
interface UrlInspectionRequest {
|
|
1739
|
+
export type SearchAnalyticsQuery = (site: string, body: SearchAnalyticsRequest, opts?: SearchAnalyticsOptions) => Promise<SearchAnalyticsResult>;
|
|
1740
|
+
export interface UrlInspectionRequest {
|
|
1741
1741
|
siteUrl: string;
|
|
1742
1742
|
inspectionUrl: string;
|
|
1743
1743
|
accountEmail?: string;
|
|
1744
1744
|
languageCode?: string;
|
|
1745
1745
|
quotaLimit?: number;
|
|
1746
1746
|
}
|
|
1747
|
-
interface UrlInspectionResult {
|
|
1747
|
+
export interface UrlInspectionResult {
|
|
1748
1748
|
inspectionResult?: {
|
|
1749
1749
|
inspectionResultLink?: string;
|
|
1750
1750
|
indexStatusResult?: {
|
|
@@ -1766,33 +1766,33 @@ interface UrlInspectionResult {
|
|
|
1766
1766
|
}
|
|
1767
1767
|
//#endregion
|
|
1768
1768
|
//#region packages/core/src/google/api.d.ts
|
|
1769
|
-
type GoogleFetch = (url: string, init?: RequestInit) => Promise<Response>;
|
|
1770
|
-
type GoogleCallOptions = {
|
|
1769
|
+
export type GoogleFetch = (url: string, init?: RequestInit) => Promise<Response>;
|
|
1770
|
+
export type GoogleCallOptions = {
|
|
1771
1771
|
signIn: string;
|
|
1772
1772
|
};
|
|
1773
|
-
declare class GoogleApiError extends SeoError {
|
|
1773
|
+
export declare class GoogleApiError extends SeoError {
|
|
1774
1774
|
readonly status: number;
|
|
1775
1775
|
constructor(code: SeoErrorCode, message: string, status: number);
|
|
1776
1776
|
}
|
|
1777
|
-
declare function bearerFetch(token: () => Promise<string> | string): GoogleFetch;
|
|
1778
|
-
declare function googleJson<T>(gfetch: GoogleFetch, url: string, input: {
|
|
1777
|
+
export declare function bearerFetch(token: () => Promise<string> | string): GoogleFetch;
|
|
1778
|
+
export declare function googleJson<T>(gfetch: GoogleFetch, url: string, input: {
|
|
1779
1779
|
body?: unknown;
|
|
1780
1780
|
label: string;
|
|
1781
1781
|
subject?: string;
|
|
1782
1782
|
maxBytes?: number;
|
|
1783
1783
|
} & GoogleCallOptions): Promise<T>;
|
|
1784
|
-
declare function searchAnalyticsRows(gfetch: GoogleFetch, site: string, body: SearchAnalyticsRequest, options: GoogleCallOptions): Promise<SearchAnalyticsResult>;
|
|
1785
|
-
type SearchConsoleSite = {
|
|
1784
|
+
export declare function searchAnalyticsRows(gfetch: GoogleFetch, site: string, body: SearchAnalyticsRequest, options: GoogleCallOptions): Promise<SearchAnalyticsResult>;
|
|
1785
|
+
export type SearchConsoleSite = {
|
|
1786
1786
|
siteUrl: string;
|
|
1787
1787
|
permissionLevel?: string;
|
|
1788
1788
|
siteType?: string;
|
|
1789
1789
|
};
|
|
1790
|
-
declare function listSearchConsoleSites(gfetch: GoogleFetch, options: GoogleCallOptions): Promise<SearchConsoleSite[]>;
|
|
1791
|
-
declare function inspectSearchConsoleUrl(gfetch: GoogleFetch, site: string, url: string, options: GoogleCallOptions & {
|
|
1790
|
+
export declare function listSearchConsoleSites(gfetch: GoogleFetch, options: GoogleCallOptions): Promise<SearchConsoleSite[]>;
|
|
1791
|
+
export declare function inspectSearchConsoleUrl(gfetch: GoogleFetch, site: string, url: string, options: GoogleCallOptions & {
|
|
1792
1792
|
languageCode?: string;
|
|
1793
1793
|
}): Promise<unknown>;
|
|
1794
|
-
declare function listAnalyticsAccounts(gfetch: GoogleFetch, options: GoogleCallOptions): Promise<Ga4AccountSummary[]>;
|
|
1795
|
-
interface Ga4DataStream {
|
|
1794
|
+
export declare function listAnalyticsAccounts(gfetch: GoogleFetch, options: GoogleCallOptions): Promise<Ga4AccountSummary[]>;
|
|
1795
|
+
export interface Ga4DataStream {
|
|
1796
1796
|
name: string;
|
|
1797
1797
|
displayName?: string;
|
|
1798
1798
|
type?: string;
|
|
@@ -1801,11 +1801,11 @@ interface Ga4DataStream {
|
|
|
1801
1801
|
measurementId?: string;
|
|
1802
1802
|
};
|
|
1803
1803
|
}
|
|
1804
|
-
declare function listAnalyticsDataStreams(gfetch: GoogleFetch, propertyId: string, options: GoogleCallOptions): Promise<Ga4DataStream[]>;
|
|
1805
|
-
declare function runAnalyticsReport<T = unknown>(gfetch: GoogleFetch, propertyId: string, body: unknown, options: GoogleCallOptions): Promise<T>;
|
|
1804
|
+
export declare function listAnalyticsDataStreams(gfetch: GoogleFetch, propertyId: string, options: GoogleCallOptions): Promise<Ga4DataStream[]>;
|
|
1805
|
+
export declare function runAnalyticsReport<T = unknown>(gfetch: GoogleFetch, propertyId: string, body: unknown, options: GoogleCallOptions): Promise<T>;
|
|
1806
1806
|
//#endregion
|
|
1807
1807
|
//#region packages/core/src/ga4/client.d.ts
|
|
1808
|
-
interface Ga4ReportRequest {
|
|
1808
|
+
export interface Ga4ReportRequest {
|
|
1809
1809
|
dateRanges: Array<{
|
|
1810
1810
|
startDate: string;
|
|
1811
1811
|
endDate: string;
|
|
@@ -1822,7 +1822,7 @@ interface Ga4ReportRequest {
|
|
|
1822
1822
|
limit?: string | number;
|
|
1823
1823
|
offset?: string | number;
|
|
1824
1824
|
}
|
|
1825
|
-
interface Ga4RunReportResult {
|
|
1825
|
+
export interface Ga4RunReportResult {
|
|
1826
1826
|
dimensionHeaders?: Array<{
|
|
1827
1827
|
name: string;
|
|
1828
1828
|
}>;
|
|
@@ -1852,16 +1852,16 @@ interface Ga4RunReportResult {
|
|
|
1852
1852
|
};
|
|
1853
1853
|
propertyQuota?: unknown;
|
|
1854
1854
|
}
|
|
1855
|
-
declare function ga4RequestCanUseCache(body: Ga4ReportRequest): boolean;
|
|
1856
|
-
declare function runGa4Report(propertyId: string, body: Ga4ReportRequest, opts?: {
|
|
1855
|
+
export declare function ga4RequestCanUseCache(body: Ga4ReportRequest): boolean;
|
|
1856
|
+
export declare function runGa4Report(propertyId: string, body: Ga4ReportRequest, opts?: {
|
|
1857
1857
|
refresh?: boolean;
|
|
1858
1858
|
accountEmail?: string;
|
|
1859
1859
|
}): Promise<Ga4RunReportResult>;
|
|
1860
|
-
declare function listGa4AccountSummaries(accountEmail?: string): Promise<Ga4AccountSummary[]>;
|
|
1861
|
-
declare function listGa4DataStreams(propertyId: string, accountEmail?: string): Promise<Ga4DataStream[]>;
|
|
1862
|
-
declare function ga4PropertyIdFromName(name: string): string;
|
|
1863
|
-
declare function ga4RowsToObjects(result: Ga4RunReportResult): Array<Record<string, string>>;
|
|
1864
|
-
declare function ga4ReportQualityWarnings(result: Ga4RunReportResult, label?: string): string[];
|
|
1860
|
+
export declare function listGa4AccountSummaries(accountEmail?: string): Promise<Ga4AccountSummary[]>;
|
|
1861
|
+
export declare function listGa4DataStreams(propertyId: string, accountEmail?: string): Promise<Ga4DataStream[]>;
|
|
1862
|
+
export declare function ga4PropertyIdFromName(name: string): string;
|
|
1863
|
+
export declare function ga4RowsToObjects(result: Ga4RunReportResult): Array<Record<string, string>>;
|
|
1864
|
+
export declare function ga4ReportQualityWarnings(result: Ga4RunReportResult, label?: string): string[];
|
|
1865
1865
|
//#endregion
|
|
1866
1866
|
//#region packages/core/src/analyze/ai-referrals-types.d.ts
|
|
1867
1867
|
type AiReferralMetrics = {
|
|
@@ -1972,19 +1972,19 @@ type AiReferralAnalysisInput = {
|
|
|
1972
1972
|
detail: AiReferralQueryEvidence;
|
|
1973
1973
|
totalUsersEvidence: AiReferralQueryEvidence;
|
|
1974
1974
|
};
|
|
1975
|
-
declare function analyzeAiReferralRows(input: AiReferralAnalysisInput): AiReferralReport;
|
|
1975
|
+
export declare function analyzeAiReferralRows(input: AiReferralAnalysisInput): AiReferralReport;
|
|
1976
1976
|
//#endregion
|
|
1977
1977
|
//#region packages/core/src/analyze/ai-referrals-query.d.ts
|
|
1978
|
-
declare function sessionSourceInListFilter(values: string[]): unknown;
|
|
1978
|
+
export declare function sessionSourceInListFilter(values: string[]): unknown;
|
|
1979
1979
|
//#endregion
|
|
1980
1980
|
//#region packages/core/src/analyze/ai-referrals-sources.d.ts
|
|
1981
|
-
declare const AI_REFERRAL_SOURCES_VERSION: "ai-referral-sources@1";
|
|
1982
|
-
declare const AI_REFERRAL_SOURCES: readonly AiReferralSourceDefinition[];
|
|
1983
|
-
declare function aiReferralSourceForValue(value: string): AiReferralSourceDefinition | undefined;
|
|
1981
|
+
export declare const AI_REFERRAL_SOURCES_VERSION: "ai-referral-sources@1";
|
|
1982
|
+
export declare const AI_REFERRAL_SOURCES: readonly AiReferralSourceDefinition[];
|
|
1983
|
+
export declare function aiReferralSourceForValue(value: string): AiReferralSourceDefinition | undefined;
|
|
1984
1984
|
//#endregion
|
|
1985
1985
|
//#region packages/core/src/analyze/ai-referrals.d.ts
|
|
1986
1986
|
type RunGa4Report = typeof runGa4Report;
|
|
1987
|
-
declare function aiReferralsReport(input: {
|
|
1987
|
+
export declare function aiReferralsReport(input: {
|
|
1988
1988
|
property: string;
|
|
1989
1989
|
startDate?: string;
|
|
1990
1990
|
endDate?: string;
|
|
@@ -2066,23 +2066,23 @@ declare function fetchPlain(url: string, refresh: boolean | undefined, timeoutMs
|
|
|
2066
2066
|
* One renderer owns one browser process and a bounded number of isolated
|
|
2067
2067
|
* contexts. Create it once for a crawl, then close it after the crawl exits.
|
|
2068
2068
|
*/
|
|
2069
|
-
declare function createPageRenderer(input?: {
|
|
2069
|
+
export declare function createPageRenderer(input?: {
|
|
2070
2070
|
concurrency?: number;
|
|
2071
2071
|
}): PageRenderer;
|
|
2072
2072
|
//#endregion
|
|
2073
2073
|
//#region packages/core/src/fetch/page-fetcher/status-probe.d.ts
|
|
2074
|
-
declare function fetchPageStatus(url: string, opts?: FetchPageOptions): Promise<PageFetchResult>;
|
|
2074
|
+
export declare function fetchPageStatus(url: string, opts?: FetchPageOptions): Promise<PageFetchResult>;
|
|
2075
2075
|
//#endregion
|
|
2076
2076
|
//#region packages/core/src/fetch/page-fetcher.d.ts
|
|
2077
|
-
type FetchPageDependencies = {
|
|
2077
|
+
export type FetchPageDependencies = {
|
|
2078
2078
|
fetchPlain?: typeof fetchPlain;
|
|
2079
2079
|
createPageRenderer?: typeof createPageRenderer;
|
|
2080
2080
|
};
|
|
2081
|
-
declare function normalizeJavaScriptRenderingMode(input: JavaScriptRenderingInput | undefined): JavaScriptRenderingMode;
|
|
2082
|
-
declare function fetchPage(url: string, opts?: FetchPageOptions, dependencies?: FetchPageDependencies): Promise<PageFetchResult>;
|
|
2081
|
+
export declare function normalizeJavaScriptRenderingMode(input: JavaScriptRenderingInput | undefined): JavaScriptRenderingMode;
|
|
2082
|
+
export declare function fetchPage(url: string, opts?: FetchPageOptions, dependencies?: FetchPageDependencies): Promise<PageFetchResult>;
|
|
2083
2083
|
//#endregion
|
|
2084
2084
|
//#region packages/core/src/gsc/client/inspection.d.ts
|
|
2085
|
-
declare function urlInspectionQuota(input: {
|
|
2085
|
+
export declare function urlInspectionQuota(input: {
|
|
2086
2086
|
siteUrl: string;
|
|
2087
2087
|
accountEmail?: string;
|
|
2088
2088
|
}): Promise<{
|
|
@@ -2090,51 +2090,51 @@ declare function urlInspectionQuota(input: {
|
|
|
2090
2090
|
limit: number;
|
|
2091
2091
|
resetAt: string;
|
|
2092
2092
|
}>;
|
|
2093
|
-
declare function inspectUrl(input: UrlInspectionRequest): Promise<UrlInspectionResult>;
|
|
2093
|
+
export declare function inspectUrl(input: UrlInspectionRequest): Promise<UrlInspectionResult>;
|
|
2094
2094
|
//#endregion
|
|
2095
2095
|
//#region packages/core/src/gsc/client/search-analytics.d.ts
|
|
2096
|
-
type PageSearchMetrics = {
|
|
2096
|
+
export type PageSearchMetrics = {
|
|
2097
2097
|
clicks: number;
|
|
2098
2098
|
impressions: number;
|
|
2099
2099
|
ctr: number;
|
|
2100
2100
|
position: number;
|
|
2101
2101
|
};
|
|
2102
|
-
type PageTopQuery = PageSearchMetrics & {
|
|
2102
|
+
export type PageTopQuery = PageSearchMetrics & {
|
|
2103
2103
|
query: string;
|
|
2104
2104
|
};
|
|
2105
|
-
type SearchDateWindow = {
|
|
2105
|
+
export type SearchDateWindow = {
|
|
2106
2106
|
startDate: string;
|
|
2107
2107
|
endDate: string;
|
|
2108
2108
|
};
|
|
2109
|
-
type SearchPageBatch<T> = {
|
|
2109
|
+
export type SearchPageBatch<T> = {
|
|
2110
2110
|
values: Map<string, T>;
|
|
2111
2111
|
returnedRows: number;
|
|
2112
2112
|
retainedRowLimit: number;
|
|
2113
2113
|
retainedRowLimitReached: boolean;
|
|
2114
2114
|
};
|
|
2115
|
-
declare function querySearchAnalytics(site: string, body: SearchAnalyticsRequest, opts?: SearchAnalyticsOptions): Promise<SearchAnalyticsResult>;
|
|
2116
|
-
declare function queryPageMetrics(site: string, pageUrl: string, days?: number): Promise<PageSearchMetrics | undefined>;
|
|
2117
|
-
declare function queryPagesMetrics(site: string, pageUrls: string[], days?: number): Promise<Map<string, PageSearchMetrics>>;
|
|
2118
|
-
declare function queryPagesMetricsBatch(site: string, pageUrls: string[], range?: number | SearchDateWindow): Promise<SearchPageBatch<PageSearchMetrics>>;
|
|
2119
|
-
declare function queryPageTopQuery(site: string, pageUrl: string, days?: number): Promise<PageTopQuery | undefined>;
|
|
2120
|
-
declare function queryPagesTopQueries(site: string, pageUrls: string[], days?: number): Promise<Map<string, PageTopQuery>>;
|
|
2121
|
-
declare function queryPagesTopQueriesBatch(site: string, pageUrls: string[], range?: number | SearchDateWindow): Promise<SearchPageBatch<PageTopQuery>>;
|
|
2115
|
+
export declare function querySearchAnalytics(site: string, body: SearchAnalyticsRequest, opts?: SearchAnalyticsOptions): Promise<SearchAnalyticsResult>;
|
|
2116
|
+
export declare function queryPageMetrics(site: string, pageUrl: string, days?: number): Promise<PageSearchMetrics | undefined>;
|
|
2117
|
+
export declare function queryPagesMetrics(site: string, pageUrls: string[], days?: number): Promise<Map<string, PageSearchMetrics>>;
|
|
2118
|
+
export declare function queryPagesMetricsBatch(site: string, pageUrls: string[], range?: number | SearchDateWindow): Promise<SearchPageBatch<PageSearchMetrics>>;
|
|
2119
|
+
export declare function queryPageTopQuery(site: string, pageUrl: string, days?: number): Promise<PageTopQuery | undefined>;
|
|
2120
|
+
export declare function queryPagesTopQueries(site: string, pageUrls: string[], days?: number): Promise<Map<string, PageTopQuery>>;
|
|
2121
|
+
export declare function queryPagesTopQueriesBatch(site: string, pageUrls: string[], range?: number | SearchDateWindow): Promise<SearchPageBatch<PageTopQuery>>;
|
|
2122
2122
|
//#endregion
|
|
2123
2123
|
//#region packages/core/src/gsc/client/sites.d.ts
|
|
2124
|
-
declare function listSites(_refresh?: boolean, accountEmail?: string): Promise<Array<{
|
|
2124
|
+
export declare function listSites(_refresh?: boolean, accountEmail?: string): Promise<Array<{
|
|
2125
2125
|
siteUrl: string;
|
|
2126
2126
|
permissionLevel?: string;
|
|
2127
2127
|
siteType?: string;
|
|
2128
2128
|
}>>;
|
|
2129
2129
|
//#endregion
|
|
2130
2130
|
//#region packages/core/src/analyze/audit-page.d.ts
|
|
2131
|
-
declare const AUDIT_PAGE_RULE_IDS: readonly ["missing_title", "title_too_wide", "h1_missing", "canonical_invalid", "canonical_conflict", "canonical_multiple", "canonical_outside_head", "canonical_streamed_in_body", "canonical_mismatch"];
|
|
2132
|
-
type AuditPageDependencies = {
|
|
2131
|
+
export declare const AUDIT_PAGE_RULE_IDS: readonly ["missing_title", "title_too_wide", "h1_missing", "canonical_invalid", "canonical_conflict", "canonical_multiple", "canonical_outside_head", "canonical_streamed_in_body", "canonical_mismatch"];
|
|
2132
|
+
export type AuditPageDependencies = {
|
|
2133
2133
|
fetchPage: typeof fetchPage;
|
|
2134
2134
|
queryPageMetrics: typeof queryPageMetrics;
|
|
2135
2135
|
now: () => Date;
|
|
2136
2136
|
};
|
|
2137
|
-
declare function auditPage(input: {
|
|
2137
|
+
export declare function auditPage(input: {
|
|
2138
2138
|
url: string;
|
|
2139
2139
|
site?: string;
|
|
2140
2140
|
js?: boolean | 'auto';
|
|
@@ -2144,14 +2144,14 @@ declare function auditPage(input: {
|
|
|
2144
2144
|
//#endregion
|
|
2145
2145
|
//#region packages/core/src/analyze/content-coverage-analysis.d.ts
|
|
2146
2146
|
/** Fetches one page. The local binding uses the cached page fetcher. */
|
|
2147
|
-
type PageFetcher = (url: string, options?: FetchPageOptions) => Promise<PageFetchResult>;
|
|
2147
|
+
export type PageFetcher = (url: string, options?: FetchPageOptions) => Promise<PageFetchResult>;
|
|
2148
2148
|
/** Extracts page fields from a fetched page. */
|
|
2149
|
-
type PageExtractor = (fetched: PageFetchResult, extractor?: ContentExtractor) => Promise<ExtractedPage>;
|
|
2150
|
-
declare function normalizeForCoverage(value: string): string;
|
|
2151
|
-
declare function measureCoverage(query: string, text?: string): CoverageField;
|
|
2152
|
-
declare function contentCoverageType(fields: QueryContentCoverage['fields']): 'content-gap' | 'serp-framing' | 'covered';
|
|
2153
|
-
declare function contentCoverageRecommendation(coverage: QueryContentCoverage): string;
|
|
2154
|
-
declare function queryContentCoverageFromPage(input: {
|
|
2149
|
+
export type PageExtractor = (fetched: PageFetchResult, extractor?: ContentExtractor) => Promise<ExtractedPage>;
|
|
2150
|
+
export declare function normalizeForCoverage(value: string): string;
|
|
2151
|
+
export declare function measureCoverage(query: string, text?: string): CoverageField;
|
|
2152
|
+
export declare function contentCoverageType(fields: QueryContentCoverage['fields']): 'content-gap' | 'serp-framing' | 'covered';
|
|
2153
|
+
export declare function contentCoverageRecommendation(coverage: QueryContentCoverage): string;
|
|
2154
|
+
export declare function queryContentCoverageFromPage(input: {
|
|
2155
2155
|
query: string;
|
|
2156
2156
|
url: string;
|
|
2157
2157
|
page: ExtractedPage;
|
|
@@ -2160,8 +2160,8 @@ declare function queryContentCoverageFromPage(input: {
|
|
|
2160
2160
|
warnings?: string[];
|
|
2161
2161
|
verifiedAt?: string;
|
|
2162
2162
|
}): QueryContentCoverage;
|
|
2163
|
-
declare function queryContentFieldsFromPage(query: string, page: ExtractedPage): QueryContentCoverage['fields'];
|
|
2164
|
-
type VerifyQueryContentInput = {
|
|
2163
|
+
export declare function queryContentFieldsFromPage(query: string, page: ExtractedPage): QueryContentCoverage['fields'];
|
|
2164
|
+
export type VerifyQueryContentInput = {
|
|
2165
2165
|
query: string;
|
|
2166
2166
|
url: string;
|
|
2167
2167
|
js?: boolean | 'auto';
|
|
@@ -2173,7 +2173,7 @@ type VerifyQueryContentInput = {
|
|
|
2173
2173
|
* Returns the injected page fetcher and extractor, or fails clearly when a
|
|
2174
2174
|
* runtime without page access was asked to verify pages.
|
|
2175
2175
|
*/
|
|
2176
|
-
declare function requirePageVerification(dependencies: {
|
|
2176
|
+
export declare function requirePageVerification(dependencies: {
|
|
2177
2177
|
fetch?: PageFetcher;
|
|
2178
2178
|
extract?: PageExtractor;
|
|
2179
2179
|
}): {
|
|
@@ -2181,14 +2181,14 @@ declare function requirePageVerification(dependencies: {
|
|
|
2181
2181
|
extract: PageExtractor;
|
|
2182
2182
|
};
|
|
2183
2183
|
/** Checks one query against one page. Callers inject fetch and extraction. */
|
|
2184
|
-
type QueryContentVerifier = (input: VerifyQueryContentInput) => Promise<QueryContentCoverage>;
|
|
2185
|
-
declare function verifyQueryContentWith(input: VerifyQueryContentInput & {
|
|
2184
|
+
export type QueryContentVerifier = (input: VerifyQueryContentInput) => Promise<QueryContentCoverage>;
|
|
2185
|
+
export declare function verifyQueryContentWith(input: VerifyQueryContentInput & {
|
|
2186
2186
|
fetch: PageFetcher;
|
|
2187
2187
|
extract: PageExtractor;
|
|
2188
2188
|
}): Promise<QueryContentCoverage>;
|
|
2189
2189
|
//#endregion
|
|
2190
2190
|
//#region packages/core/src/analyze/content-coverage.d.ts
|
|
2191
|
-
declare function verifyQueryContent(input: VerifyQueryContentInput & {
|
|
2191
|
+
export declare function verifyQueryContent(input: VerifyQueryContentInput & {
|
|
2192
2192
|
fetch?: PageFetcher;
|
|
2193
2193
|
extract?: PageExtractor;
|
|
2194
2194
|
}): Promise<QueryContentCoverage>;
|
|
@@ -2352,17 +2352,17 @@ type PageOpportunityAnalysisInput = {
|
|
|
2352
2352
|
};
|
|
2353
2353
|
//#endregion
|
|
2354
2354
|
//#region packages/core/src/analyze/shared.d.ts
|
|
2355
|
-
declare function unicodeTokens(value: string): string[];
|
|
2355
|
+
export declare function unicodeTokens(value: string): string[];
|
|
2356
2356
|
//#endregion
|
|
2357
2357
|
//#region packages/core/src/analyze/opportunity-primitives.d.ts
|
|
2358
|
-
type OpportunityBenchmarkRow = {
|
|
2358
|
+
export type OpportunityBenchmarkRow = {
|
|
2359
2359
|
keys?: string[];
|
|
2360
2360
|
clicks: number;
|
|
2361
2361
|
impressions: number;
|
|
2362
2362
|
ctr: number;
|
|
2363
2363
|
position: number;
|
|
2364
2364
|
};
|
|
2365
|
-
type PositionBenchmark = {
|
|
2365
|
+
export type PositionBenchmark = {
|
|
2366
2366
|
ctr: number;
|
|
2367
2367
|
source: string;
|
|
2368
2368
|
samplePopulation: 'positive_url_samples' | 'all_qualified_url_samples';
|
|
@@ -2372,7 +2372,7 @@ type PositionBenchmark = {
|
|
|
2372
2372
|
urlSamples: number;
|
|
2373
2373
|
positiveUrlSamples: number;
|
|
2374
2374
|
};
|
|
2375
|
-
type QueryFieldCoverage = {
|
|
2375
|
+
export type QueryFieldCoverage = {
|
|
2376
2376
|
evaluated: boolean;
|
|
2377
2377
|
reason?: string;
|
|
2378
2378
|
queryTokens: string[];
|
|
@@ -2381,9 +2381,9 @@ type QueryFieldCoverage = {
|
|
|
2381
2381
|
inH1: boolean;
|
|
2382
2382
|
inOpeningCopy: boolean;
|
|
2383
2383
|
};
|
|
2384
|
-
declare function roundedPosition(position: number): number;
|
|
2385
|
-
declare function expectedCtrForPosition(position: number): number;
|
|
2386
|
-
declare function createCtrBenchmarkContext(rows: OpportunityBenchmarkRow[], options?: {
|
|
2384
|
+
export declare function roundedPosition(position: number): number;
|
|
2385
|
+
export declare function expectedCtrForPosition(position: number): number;
|
|
2386
|
+
export declare function createCtrBenchmarkContext(rows: OpportunityBenchmarkRow[], options?: {
|
|
2387
2387
|
samplePopulation?: PositionBenchmark['samplePopulation'];
|
|
2388
2388
|
fallbackSource?: string;
|
|
2389
2389
|
}): {
|
|
@@ -2398,17 +2398,17 @@ declare function createCtrBenchmarkContext(rows: OpportunityBenchmarkRow[], opti
|
|
|
2398
2398
|
fallbackRowScans: number;
|
|
2399
2399
|
};
|
|
2400
2400
|
};
|
|
2401
|
-
declare function queryFieldCoverage(query: string, input: {
|
|
2401
|
+
export declare function queryFieldCoverage(query: string, input: {
|
|
2402
2402
|
title?: string;
|
|
2403
2403
|
meta?: string;
|
|
2404
2404
|
h1?: string;
|
|
2405
2405
|
opening?: string;
|
|
2406
2406
|
}): QueryFieldCoverage;
|
|
2407
|
-
declare function pageEvidenceRecommendation(input: {
|
|
2407
|
+
export declare function pageEvidenceRecommendation(input: {
|
|
2408
2408
|
query: string;
|
|
2409
2409
|
coverage: QueryFieldCoverage;
|
|
2410
2410
|
}): string;
|
|
2411
|
-
declare function queryOpportunityRecommendation(input: {
|
|
2411
|
+
export declare function queryOpportunityRecommendation(input: {
|
|
2412
2412
|
query: string;
|
|
2413
2413
|
position: number;
|
|
2414
2414
|
ctr: number;
|
|
@@ -2430,7 +2430,7 @@ declare function pageTechnicalSignals(input: {
|
|
|
2430
2430
|
}): PageTechnicalSignal[];
|
|
2431
2431
|
//#endregion
|
|
2432
2432
|
//#region packages/core/src/analyze/page-opportunities-analysis.d.ts
|
|
2433
|
-
declare function analyzePageOpportunitiesFromRows(input: PageOpportunityAnalysisInput): PageOpportunityAnalysis;
|
|
2433
|
+
export declare function analyzePageOpportunitiesFromRows(input: PageOpportunityAnalysisInput): PageOpportunityAnalysis;
|
|
2434
2434
|
//#endregion
|
|
2435
2435
|
//#region packages/core/src/analyze/page-opportunities-presentation.d.ts
|
|
2436
2436
|
type PageOpportunityFocus = PageOpportunityType | 'no-data';
|
|
@@ -2439,7 +2439,7 @@ type PageOpportunityFocus = PageOpportunityType | 'no-data';
|
|
|
2439
2439
|
type SearchAnalytics$2 = typeof querySearchAnalytics;
|
|
2440
2440
|
type FetchPage = typeof fetchPage;
|
|
2441
2441
|
type ExtractPage = typeof extractPage;
|
|
2442
|
-
type PageOpportunityInput = {
|
|
2442
|
+
export type PageOpportunityInput = {
|
|
2443
2443
|
site: string;
|
|
2444
2444
|
url: string;
|
|
2445
2445
|
days?: number;
|
|
@@ -2451,7 +2451,7 @@ type PageOpportunityInput = {
|
|
|
2451
2451
|
refresh?: boolean;
|
|
2452
2452
|
js?: boolean | 'auto';
|
|
2453
2453
|
};
|
|
2454
|
-
type PageOpportunityReport = {
|
|
2454
|
+
export type PageOpportunityReport = {
|
|
2455
2455
|
site: string;
|
|
2456
2456
|
url: string;
|
|
2457
2457
|
generatedAt: string;
|
|
@@ -2513,11 +2513,11 @@ type PageOpportunityDependencies = {
|
|
|
2513
2513
|
extract: ExtractPage;
|
|
2514
2514
|
now: () => Date;
|
|
2515
2515
|
};
|
|
2516
|
-
declare function pageOpportunitiesReport(input: PageOpportunityInput, dependencies?: PageOpportunityDependencies): Promise<PageOpportunityReport>;
|
|
2516
|
+
export declare function pageOpportunitiesReport(input: PageOpportunityInput, dependencies?: PageOpportunityDependencies): Promise<PageOpportunityReport>;
|
|
2517
2517
|
//#endregion
|
|
2518
2518
|
//#region packages/core/src/analyze/content-optimization.d.ts
|
|
2519
|
-
type ContentOptimizationIntent = 'comparison' | 'commercial' | 'how-to' | 'definition' | 'local' | 'navigational' | 'general';
|
|
2520
|
-
type ContentOptimizationReport = {
|
|
2519
|
+
export type ContentOptimizationIntent = 'comparison' | 'commercial' | 'how-to' | 'definition' | 'local' | 'navigational' | 'general';
|
|
2520
|
+
export type ContentOptimizationReport = {
|
|
2521
2521
|
site: string;
|
|
2522
2522
|
url: string;
|
|
2523
2523
|
generatedAt: string;
|
|
@@ -2556,8 +2556,8 @@ type ContentOptimizationReport = {
|
|
|
2556
2556
|
}>;
|
|
2557
2557
|
caveats: string[];
|
|
2558
2558
|
};
|
|
2559
|
-
declare function contentOptimizationFromPageOpportunities(sourceReport: PageOpportunityReport): ContentOptimizationReport;
|
|
2560
|
-
declare function contentOptimizationReport(input: {
|
|
2559
|
+
export declare function contentOptimizationFromPageOpportunities(sourceReport: PageOpportunityReport): ContentOptimizationReport;
|
|
2560
|
+
export declare function contentOptimizationReport(input: {
|
|
2561
2561
|
site: string;
|
|
2562
2562
|
url: string;
|
|
2563
2563
|
days?: number;
|
|
@@ -2571,7 +2571,7 @@ declare function contentOptimizationReport(input: {
|
|
|
2571
2571
|
}): Promise<ContentOptimizationReport>;
|
|
2572
2572
|
//#endregion
|
|
2573
2573
|
//#region packages/core/src/analyze/monitoring/types.d.ts
|
|
2574
|
-
type CrawlPageSnapshot = {
|
|
2574
|
+
export type CrawlPageSnapshot = {
|
|
2575
2575
|
url: string;
|
|
2576
2576
|
finalUrl: string;
|
|
2577
2577
|
status: number;
|
|
@@ -2747,20 +2747,20 @@ type CrawlPageSnapshot = {
|
|
|
2747
2747
|
conversions?: number;
|
|
2748
2748
|
};
|
|
2749
2749
|
};
|
|
2750
|
-
type ExternalLinkCheckState = 'available' | 'confirmed-broken' | 'transient' | 'provider-blocked' | 'rate-limited' | 'method-rejected' | 'unavailable';
|
|
2751
|
-
type ExternalLinkCheckAttempt = {
|
|
2750
|
+
export type ExternalLinkCheckState = 'available' | 'confirmed-broken' | 'transient' | 'provider-blocked' | 'rate-limited' | 'method-rejected' | 'unavailable';
|
|
2751
|
+
export type ExternalLinkCheckAttempt = {
|
|
2752
2752
|
method: 'HEAD' | 'GET';
|
|
2753
2753
|
status?: number;
|
|
2754
2754
|
error?: string;
|
|
2755
2755
|
};
|
|
2756
|
-
type ExternalLinkCheck = {
|
|
2756
|
+
export type ExternalLinkCheck = {
|
|
2757
2757
|
url: string;
|
|
2758
2758
|
status?: number;
|
|
2759
2759
|
error?: string;
|
|
2760
2760
|
state?: ExternalLinkCheckState;
|
|
2761
2761
|
attempts?: ExternalLinkCheckAttempt[];
|
|
2762
2762
|
};
|
|
2763
|
-
type CrawlResponseObservation = {
|
|
2763
|
+
export type CrawlResponseObservation = {
|
|
2764
2764
|
requestedUrl: string;
|
|
2765
2765
|
outcome: 'response';
|
|
2766
2766
|
finalUrl: string;
|
|
@@ -2776,7 +2776,7 @@ type CrawlResponseObservation = {
|
|
|
2776
2776
|
extraction: 'failed';
|
|
2777
2777
|
extractionError: string;
|
|
2778
2778
|
});
|
|
2779
|
-
type CrawlRequestObservation = CrawlResponseObservation | {
|
|
2779
|
+
export type CrawlRequestObservation = CrawlResponseObservation | {
|
|
2780
2780
|
requestedUrl: string;
|
|
2781
2781
|
outcome: 'skipped';
|
|
2782
2782
|
durationMs?: number;
|
|
@@ -2800,18 +2800,18 @@ type CrawlRequestObservation = CrawlResponseObservation | {
|
|
|
2800
2800
|
};
|
|
2801
2801
|
//#endregion
|
|
2802
2802
|
//#region packages/core/src/analyze/monitoring/sitemaps.d.ts
|
|
2803
|
-
type SitemapInvalidLoc = {
|
|
2803
|
+
export type SitemapInvalidLoc = {
|
|
2804
2804
|
sitemapUrl: string;
|
|
2805
2805
|
kind: 'url' | 'sitemap';
|
|
2806
2806
|
value: string;
|
|
2807
2807
|
};
|
|
2808
|
-
type SitemapLastmodObservation = {
|
|
2808
|
+
export type SitemapLastmodObservation = {
|
|
2809
2809
|
sitemapUrl: string;
|
|
2810
2810
|
kind: 'url' | 'sitemap';
|
|
2811
2811
|
loc: string;
|
|
2812
2812
|
value: string;
|
|
2813
2813
|
};
|
|
2814
|
-
type SitemapDocument = {
|
|
2814
|
+
export type SitemapDocument = {
|
|
2815
2815
|
url: string;
|
|
2816
2816
|
finalUrl?: string;
|
|
2817
2817
|
redirected?: true;
|
|
@@ -2824,7 +2824,7 @@ type SitemapDocument = {
|
|
|
2824
2824
|
root?: 'urlset' | 'sitemapindex';
|
|
2825
2825
|
warning?: string;
|
|
2826
2826
|
};
|
|
2827
|
-
type SitemapFetchResult = {
|
|
2827
|
+
export type SitemapFetchResult = {
|
|
2828
2828
|
sitemapUrl: string;
|
|
2829
2829
|
dataStatus: 'complete' | 'partial';
|
|
2830
2830
|
urls: string[];
|
|
@@ -2867,7 +2867,7 @@ type SitemapFetchResult = {
|
|
|
2867
2867
|
};
|
|
2868
2868
|
warnings: string[];
|
|
2869
2869
|
};
|
|
2870
|
-
type BoundedSitemapInventory = {
|
|
2870
|
+
export type BoundedSitemapInventory = {
|
|
2871
2871
|
urls: string[];
|
|
2872
2872
|
truncation: {
|
|
2873
2873
|
possiblyTruncated: boolean;
|
|
@@ -2877,28 +2877,28 @@ type BoundedSitemapInventory = {
|
|
|
2877
2877
|
limit: number;
|
|
2878
2878
|
};
|
|
2879
2879
|
};
|
|
2880
|
-
declare function boundedSitemapInventory(results: Array<Pick<SitemapFetchResult, 'urls' | 'truncation'>>, limit: number): BoundedSitemapInventory;
|
|
2881
|
-
declare function fetchSitemapUrls(input: {
|
|
2880
|
+
export declare function boundedSitemapInventory(results: Array<Pick<SitemapFetchResult, 'urls' | 'truncation'>>, limit: number): BoundedSitemapInventory;
|
|
2881
|
+
export declare function fetchSitemapUrls(input: {
|
|
2882
2882
|
sitemapUrl: string;
|
|
2883
2883
|
limit?: number;
|
|
2884
2884
|
maxNested?: number;
|
|
2885
2885
|
}): Promise<SitemapFetchResult>;
|
|
2886
2886
|
//#endregion
|
|
2887
2887
|
//#region packages/core/src/analyze/crawler/crawl-skip-reasons.d.ts
|
|
2888
|
-
declare const CRAWL_SKIP_REASONS: readonly ["asset-url", "configured-exclusion", "duplicate-normalization", "invalid-url", "memory-pressure", "off-origin", "origin-backpressure", "queue-safety-limit", "robots-disallowed", "robots-uncertain", "legacy-unclassified"];
|
|
2889
|
-
type CrawlSkipReason = (typeof CRAWL_SKIP_REASONS)[number];
|
|
2890
|
-
type CrawlSkipImpact = 'coverage-affecting' | 'non-impacting';
|
|
2891
|
-
type CrawlSkipReasonCount = {
|
|
2888
|
+
export declare const CRAWL_SKIP_REASONS: readonly ["asset-url", "configured-exclusion", "duplicate-normalization", "invalid-url", "memory-pressure", "off-origin", "origin-backpressure", "queue-safety-limit", "robots-disallowed", "robots-uncertain", "legacy-unclassified"];
|
|
2889
|
+
export type CrawlSkipReason = (typeof CRAWL_SKIP_REASONS)[number];
|
|
2890
|
+
export type CrawlSkipImpact = 'coverage-affecting' | 'non-impacting';
|
|
2891
|
+
export type CrawlSkipReasonCount = {
|
|
2892
2892
|
reason: CrawlSkipReason;
|
|
2893
2893
|
impact: CrawlSkipImpact;
|
|
2894
2894
|
count: number;
|
|
2895
2895
|
};
|
|
2896
|
-
type CrawlSkippedUrlsByImpact = {
|
|
2896
|
+
export type CrawlSkippedUrlsByImpact = {
|
|
2897
2897
|
coverageAffecting: number;
|
|
2898
2898
|
nonImpacting: number;
|
|
2899
2899
|
};
|
|
2900
|
-
declare function crawlSkipImpact(reason: CrawlSkipReason): CrawlSkipImpact;
|
|
2901
|
-
declare function normalizeCrawlSkipReasonCounts(input: {
|
|
2900
|
+
export declare function crawlSkipImpact(reason: CrawlSkipReason): CrawlSkipImpact;
|
|
2901
|
+
export declare function normalizeCrawlSkipReasonCounts(input: {
|
|
2902
2902
|
skippedUrls?: number;
|
|
2903
2903
|
skipReasons?: unknown;
|
|
2904
2904
|
}): {
|
|
@@ -2906,20 +2906,20 @@ declare function normalizeCrawlSkipReasonCounts(input: {
|
|
|
2906
2906
|
skipReasons: CrawlSkipReasonCount[];
|
|
2907
2907
|
skippedUrlsByImpact: CrawlSkippedUrlsByImpact;
|
|
2908
2908
|
};
|
|
2909
|
-
declare function crawlSkipReasonCountsFromRecord(input?: Partial<Record<CrawlSkipReason, number>>): CrawlSkipReasonCount[];
|
|
2909
|
+
export declare function crawlSkipReasonCountsFromRecord(input?: Partial<Record<CrawlSkipReason, number>>): CrawlSkipReasonCount[];
|
|
2910
2910
|
//#endregion
|
|
2911
2911
|
//#region packages/core/src/analyze/crawler/crawl-status.d.ts
|
|
2912
2912
|
type CrawlStatusPhase = 'started' | 'url_queued' | 'url_skipped' | 'page_started' | 'page_completed' | 'page_failed' | 'page_skipped' | 'external_links_started' | 'external_links_completed' | 'cancelled' | 'completed';
|
|
2913
2913
|
//#endregion
|
|
2914
2914
|
//#region packages/core/src/analyze/monitoring/crawl-page.d.ts
|
|
2915
|
-
type CrawlOneResult = {
|
|
2915
|
+
export type CrawlOneResult = {
|
|
2916
2916
|
request?: CrawlRequestObservation;
|
|
2917
2917
|
page?: CrawlPageSnapshot;
|
|
2918
2918
|
urls: string[];
|
|
2919
2919
|
warning?: string;
|
|
2920
2920
|
};
|
|
2921
|
-
declare function crawlOne(url: string, opts?: FetchPageOptions): Promise<CrawlOneResult>;
|
|
2922
|
-
declare function crawlStatusOnly(url: string, opts?: FetchPageOptions): Promise<CrawlOneResult>;
|
|
2921
|
+
export declare function crawlOne(url: string, opts?: FetchPageOptions): Promise<CrawlOneResult>;
|
|
2922
|
+
export declare function crawlStatusOnly(url: string, opts?: FetchPageOptions): Promise<CrawlOneResult>;
|
|
2923
2923
|
//#endregion
|
|
2924
2924
|
//#region packages/core/src/analyze/crawler/site-checks.d.ts
|
|
2925
2925
|
type CrawlSiteChecks = {
|
|
@@ -3017,14 +3017,14 @@ type CrawlAiSignals = {
|
|
|
3017
3017
|
};
|
|
3018
3018
|
//#endregion
|
|
3019
3019
|
//#region packages/core/src/analyze/crawler/report.d.ts
|
|
3020
|
-
type CrawlMode = 'site' | 'page' | 'list' | 'sitemap';
|
|
3021
|
-
type CrawlStrategy = 'full' | 'health';
|
|
3022
|
-
declare const MAX_CRAWL_PAGES = 10000;
|
|
3023
|
-
declare const MAX_CRAWL_DEPTH = 64;
|
|
3024
|
-
declare const MAX_CRAWL_CONCURRENCY = 16;
|
|
3025
|
-
declare const MAX_CRAWL_TIMEOUT_MS = 120000;
|
|
3026
|
-
type CrawlFetchRateConfig = FetchRateControls;
|
|
3027
|
-
type CrawlConfig = {
|
|
3020
|
+
export type CrawlMode = 'site' | 'page' | 'list' | 'sitemap';
|
|
3021
|
+
export type CrawlStrategy = 'full' | 'health';
|
|
3022
|
+
export declare const MAX_CRAWL_PAGES = 10000;
|
|
3023
|
+
export declare const MAX_CRAWL_DEPTH = 64;
|
|
3024
|
+
export declare const MAX_CRAWL_CONCURRENCY = 16;
|
|
3025
|
+
export declare const MAX_CRAWL_TIMEOUT_MS = 120000;
|
|
3026
|
+
export type CrawlFetchRateConfig = FetchRateControls;
|
|
3027
|
+
export type CrawlConfig = {
|
|
3028
3028
|
url: string;
|
|
3029
3029
|
mode: CrawlMode;
|
|
3030
3030
|
strategy: CrawlStrategy;
|
|
@@ -3043,7 +3043,7 @@ type CrawlConfig = {
|
|
|
3043
3043
|
refresh: boolean;
|
|
3044
3044
|
fetchRate: CrawlFetchRateConfig;
|
|
3045
3045
|
};
|
|
3046
|
-
type CrawlConfigInput = Omit<Partial<CrawlConfig>, 'url' | 'js'> & {
|
|
3046
|
+
export type CrawlConfigInput = Omit<Partial<CrawlConfig>, 'url' | 'js'> & {
|
|
3047
3047
|
url: string;
|
|
3048
3048
|
js?: JavaScriptRenderingInput;
|
|
3049
3049
|
site?: string;
|
|
@@ -3054,7 +3054,7 @@ type CrawlConfigInput = Omit<Partial<CrawlConfig>, 'url' | 'js'> & {
|
|
|
3054
3054
|
signal?: AbortSignal;
|
|
3055
3055
|
onStatus?: CrawlStatusHandler;
|
|
3056
3056
|
};
|
|
3057
|
-
type CrawlStatusEvent = {
|
|
3057
|
+
export type CrawlStatusEvent = {
|
|
3058
3058
|
type: 'crawl_status';
|
|
3059
3059
|
phase: CrawlStatusPhase;
|
|
3060
3060
|
generatedAt: string;
|
|
@@ -3075,8 +3075,8 @@ type CrawlStatusEvent = {
|
|
|
3075
3075
|
observedInternalLinks: number;
|
|
3076
3076
|
maxPages: number;
|
|
3077
3077
|
};
|
|
3078
|
-
type CrawlStatusHandler = (event: CrawlStatusEvent) => void | Promise<void>;
|
|
3079
|
-
type CrawlIssue = {
|
|
3078
|
+
export type CrawlStatusHandler = (event: CrawlStatusEvent) => void | Promise<void>;
|
|
3079
|
+
export type CrawlIssue = {
|
|
3080
3080
|
ruleId: RuleId;
|
|
3081
3081
|
title: string;
|
|
3082
3082
|
category: RuleCategory;
|
|
@@ -3086,7 +3086,7 @@ type CrawlIssue = {
|
|
|
3086
3086
|
evidence?: Record<string, unknown>;
|
|
3087
3087
|
searchMetrics?: CrawlPageSnapshot['searchMetrics'];
|
|
3088
3088
|
};
|
|
3089
|
-
type CrawlIssueGroup = {
|
|
3089
|
+
export type CrawlIssueGroup = {
|
|
3090
3090
|
ruleId: RuleId;
|
|
3091
3091
|
title: string;
|
|
3092
3092
|
category: RuleCategory;
|
|
@@ -3094,7 +3094,7 @@ type CrawlIssueGroup = {
|
|
|
3094
3094
|
count: number;
|
|
3095
3095
|
sampleUrls: string[];
|
|
3096
3096
|
};
|
|
3097
|
-
type CrawlRunStats = {
|
|
3097
|
+
export type CrawlRunStats = {
|
|
3098
3098
|
discoveredUrls: number;
|
|
3099
3099
|
queuedUrls: number;
|
|
3100
3100
|
crawledUrls: number;
|
|
@@ -3104,8 +3104,8 @@ type CrawlRunStats = {
|
|
|
3104
3104
|
observedInternalLinks: number;
|
|
3105
3105
|
pageLimitReached: boolean;
|
|
3106
3106
|
};
|
|
3107
|
-
type CrawlLinkGraph = Record<string, string[]>;
|
|
3108
|
-
type CrawlSitemapDiscovery = {
|
|
3107
|
+
export type CrawlLinkGraph = Record<string, string[]>;
|
|
3108
|
+
export type CrawlSitemapDiscovery = {
|
|
3109
3109
|
dataStatus: 'complete' | 'partial' | 'unavailable';
|
|
3110
3110
|
urlsReturned: number;
|
|
3111
3111
|
roots: Array<{
|
|
@@ -3120,7 +3120,7 @@ type CrawlSitemapDiscovery = {
|
|
|
3120
3120
|
warnings: string[];
|
|
3121
3121
|
}>;
|
|
3122
3122
|
};
|
|
3123
|
-
type CrawlExternalLinkVerification = {
|
|
3123
|
+
export type CrawlExternalLinkVerification = {
|
|
3124
3124
|
dataStatus: 'complete' | 'partial' | 'unavailable';
|
|
3125
3125
|
discoveredLinkOccurrences: number;
|
|
3126
3126
|
retainedUrls: number;
|
|
@@ -3132,13 +3132,13 @@ type CrawlExternalLinkVerification = {
|
|
|
3132
3132
|
outcomes?: Record<ExternalLinkCheckState, number>;
|
|
3133
3133
|
warnings: string[];
|
|
3134
3134
|
};
|
|
3135
|
-
type CrawlDataSourceStatus = 'joined' | 'partial' | 'none' | 'skipped' | 'unavailable';
|
|
3136
|
-
type CrawlDataSourceWindow = {
|
|
3135
|
+
export type CrawlDataSourceStatus = 'joined' | 'partial' | 'none' | 'skipped' | 'unavailable';
|
|
3136
|
+
export type CrawlDataSourceWindow = {
|
|
3137
3137
|
startDate: string;
|
|
3138
3138
|
endDate: string;
|
|
3139
3139
|
days: number;
|
|
3140
3140
|
};
|
|
3141
|
-
type CrawlSearchDataSource = {
|
|
3141
|
+
export type CrawlSearchDataSource = {
|
|
3142
3142
|
status: CrawlDataSourceStatus;
|
|
3143
3143
|
window?: CrawlDataSourceWindow;
|
|
3144
3144
|
totalPages: number;
|
|
@@ -3153,7 +3153,7 @@ type CrawlSearchDataSource = {
|
|
|
3153
3153
|
retainedRowLimitReached?: boolean;
|
|
3154
3154
|
warning?: string;
|
|
3155
3155
|
};
|
|
3156
|
-
type CrawlAnalyticsDataSource = {
|
|
3156
|
+
export type CrawlAnalyticsDataSource = {
|
|
3157
3157
|
provider?: string;
|
|
3158
3158
|
observedMetrics?: Array<'sessions' | 'totalUsers' | 'conversions'>;
|
|
3159
3159
|
status: CrawlDataSourceStatus;
|
|
@@ -3167,11 +3167,11 @@ type CrawlAnalyticsDataSource = {
|
|
|
3167
3167
|
retainedRowLimitReached?: boolean;
|
|
3168
3168
|
warning?: string;
|
|
3169
3169
|
};
|
|
3170
|
-
type CrawlReportDataSources = {
|
|
3170
|
+
export type CrawlReportDataSources = {
|
|
3171
3171
|
searchConsole: CrawlSearchDataSource;
|
|
3172
3172
|
analytics: CrawlAnalyticsDataSource;
|
|
3173
3173
|
};
|
|
3174
|
-
type CrawlReportSummary = {
|
|
3174
|
+
export type CrawlReportSummary = {
|
|
3175
3175
|
totalPages: number;
|
|
3176
3176
|
statusOnlyPages: number;
|
|
3177
3177
|
indexablePages: number;
|
|
@@ -3200,7 +3200,7 @@ type CrawlReportSummary = {
|
|
|
3200
3200
|
byStatus: Record<string, number>;
|
|
3201
3201
|
byCategory: Record<string, number>;
|
|
3202
3202
|
};
|
|
3203
|
-
type CrawlAccessSummary = {
|
|
3203
|
+
export type CrawlAccessSummary = {
|
|
3204
3204
|
crawler: CrawlerIdentity;
|
|
3205
3205
|
blockedRequests: number;
|
|
3206
3206
|
providers: Partial<Record<AccessBlockEvidence['provider'], number>>;
|
|
@@ -3211,7 +3211,7 @@ type CrawlAccessSummary = {
|
|
|
3211
3211
|
sampleLimit: number;
|
|
3212
3212
|
truncated: boolean;
|
|
3213
3213
|
};
|
|
3214
|
-
type CrawlReport = {
|
|
3214
|
+
export type CrawlReport = {
|
|
3215
3215
|
id: string;
|
|
3216
3216
|
definitionId: string;
|
|
3217
3217
|
site?: string;
|
|
@@ -3236,18 +3236,18 @@ type CrawlReport = {
|
|
|
3236
3236
|
warnings: string[];
|
|
3237
3237
|
caveats: string[];
|
|
3238
3238
|
};
|
|
3239
|
-
declare function normalizeCrawlConfig(input: CrawlConfigInput): CrawlConfig;
|
|
3240
|
-
declare function assertCrawlConfigLimits(config: CrawlConfig): CrawlConfig;
|
|
3241
|
-
declare function crawlConfigHash(config: CrawlConfigInput): string;
|
|
3242
|
-
declare function crawlDefinitionId(input: {
|
|
3239
|
+
export declare function normalizeCrawlConfig(input: CrawlConfigInput): CrawlConfig;
|
|
3240
|
+
export declare function assertCrawlConfigLimits(config: CrawlConfig): CrawlConfig;
|
|
3241
|
+
export declare function crawlConfigHash(config: CrawlConfigInput): string;
|
|
3242
|
+
export declare function crawlDefinitionId(input: {
|
|
3243
3243
|
config: CrawlConfigInput;
|
|
3244
3244
|
site?: string;
|
|
3245
3245
|
googleAnalyticsPropertyId?: string;
|
|
3246
3246
|
analyticsConnection?: AnalyticsConnection;
|
|
3247
3247
|
}): string;
|
|
3248
|
-
declare function crawlRunId(): string;
|
|
3249
|
-
declare function groupCrawlIssues(issues: CrawlIssue[]): CrawlIssueGroup[];
|
|
3250
|
-
declare function summarizeCrawlReport(input: {
|
|
3248
|
+
export declare function crawlRunId(): string;
|
|
3249
|
+
export declare function groupCrawlIssues(issues: CrawlIssue[]): CrawlIssueGroup[];
|
|
3250
|
+
export declare function summarizeCrawlReport(input: {
|
|
3251
3251
|
pages: CrawlPageSnapshot[];
|
|
3252
3252
|
requests?: CrawlRequestObservation[];
|
|
3253
3253
|
requestEvidenceStatus?: CrawlReport['requestEvidenceStatus'];
|
|
@@ -3256,7 +3256,7 @@ declare function summarizeCrawlReport(input: {
|
|
|
3256
3256
|
skipReasons?: CrawlSkipReasonCount[];
|
|
3257
3257
|
};
|
|
3258
3258
|
}): CrawlReportSummary;
|
|
3259
|
-
declare function createCrawlReport(input: {
|
|
3259
|
+
export declare function createCrawlReport(input: {
|
|
3260
3260
|
id?: string;
|
|
3261
3261
|
config: CrawlConfigInput;
|
|
3262
3262
|
pages?: CrawlPageSnapshot[];
|
|
@@ -3279,23 +3279,23 @@ declare function createCrawlReport(input: {
|
|
|
3279
3279
|
stats?: Partial<CrawlRunStats>;
|
|
3280
3280
|
generatedAt?: string;
|
|
3281
3281
|
}): CrawlReport;
|
|
3282
|
-
declare function normalizeLoadedCrawlReport(report: CrawlReport): CrawlReport;
|
|
3282
|
+
export declare function normalizeLoadedCrawlReport(report: CrawlReport): CrawlReport;
|
|
3283
3283
|
//#endregion
|
|
3284
3284
|
//#region packages/core/src/analyze/crawler/audit.d.ts
|
|
3285
|
-
declare function auditCrawlRequests(requests: CrawlRequestObservation[]): CrawlIssue[];
|
|
3286
|
-
declare function auditCrawlPages(pages: CrawlPageSnapshot[], opts?: {
|
|
3285
|
+
export declare function auditCrawlRequests(requests: CrawlRequestObservation[]): CrawlIssue[];
|
|
3286
|
+
export declare function auditCrawlPages(pages: CrawlPageSnapshot[], opts?: {
|
|
3287
3287
|
startUrl?: string;
|
|
3288
3288
|
}): CrawlIssue[];
|
|
3289
3289
|
//#endregion
|
|
3290
3290
|
//#region packages/core/src/analyze/crawler/top-fixes.d.ts
|
|
3291
|
-
type TopFixFilters = {
|
|
3291
|
+
export type TopFixFilters = {
|
|
3292
3292
|
category?: RuleCategory | string;
|
|
3293
3293
|
severity?: RuleSeverity | string;
|
|
3294
3294
|
url?: string;
|
|
3295
3295
|
limit?: number;
|
|
3296
3296
|
recommendation?: RuleRecommendation;
|
|
3297
3297
|
};
|
|
3298
|
-
type TopFix = CrawlIssueGroup & {
|
|
3298
|
+
export type TopFix = CrawlIssueGroup & {
|
|
3299
3299
|
recommendation: RuleRecommendation;
|
|
3300
3300
|
score: number;
|
|
3301
3301
|
scoreFactors: {
|
|
@@ -3319,29 +3319,29 @@ type TopFix = CrawlIssueGroup & {
|
|
|
3319
3319
|
expected: string;
|
|
3320
3320
|
};
|
|
3321
3321
|
};
|
|
3322
|
-
declare function topFixes(report: CrawlReport, filters?: TopFixFilters): TopFix[];
|
|
3323
|
-
declare function reviewObservations(report: CrawlReport, filters?: Omit<TopFixFilters, 'recommendation'>): TopFix[];
|
|
3322
|
+
export declare function topFixes(report: CrawlReport, filters?: TopFixFilters): TopFix[];
|
|
3323
|
+
export declare function reviewObservations(report: CrawlReport, filters?: Omit<TopFixFilters, 'recommendation'>): TopFix[];
|
|
3324
3324
|
//#endregion
|
|
3325
3325
|
//#region packages/core/src/analyze/crawler/export.d.ts
|
|
3326
|
-
type CrawlOutputFormat = 'pretty' | 'json' | 'csv' | 'html' | 'markdown' | 'junit';
|
|
3327
|
-
declare function renderCrawlCsv(report: CrawlReport): string;
|
|
3328
|
-
declare function renderCrawlPagesCsv(report: CrawlReport): string;
|
|
3329
|
-
declare function renderCrawlPretty(report: CrawlReport, fixes?: TopFix[]): string;
|
|
3330
|
-
declare function renderCrawlJunit(report: CrawlReport): string;
|
|
3331
|
-
declare function renderCrawlHtml(report: CrawlReport, fixes?: TopFix[]): string;
|
|
3332
|
-
declare function renderCrawlMarkdownTickets(report: CrawlReport, fixes?: TopFix[]): string;
|
|
3326
|
+
export type CrawlOutputFormat = 'pretty' | 'json' | 'csv' | 'html' | 'markdown' | 'junit';
|
|
3327
|
+
export declare function renderCrawlCsv(report: CrawlReport): string;
|
|
3328
|
+
export declare function renderCrawlPagesCsv(report: CrawlReport): string;
|
|
3329
|
+
export declare function renderCrawlPretty(report: CrawlReport, fixes?: TopFix[]): string;
|
|
3330
|
+
export declare function renderCrawlJunit(report: CrawlReport): string;
|
|
3331
|
+
export declare function renderCrawlHtml(report: CrawlReport, fixes?: TopFix[]): string;
|
|
3332
|
+
export declare function renderCrawlMarkdownTickets(report: CrawlReport, fixes?: TopFix[]): string;
|
|
3333
3333
|
//#endregion
|
|
3334
3334
|
//#region packages/core/src/analyze/crawler/schemas.d.ts
|
|
3335
|
-
declare const crawlerRuleSeveritySchema: z.ZodEnum<{
|
|
3335
|
+
export declare const crawlerRuleSeveritySchema: z.ZodEnum<{
|
|
3336
3336
|
high: "high";
|
|
3337
3337
|
low: "low";
|
|
3338
3338
|
medium: "medium";
|
|
3339
3339
|
}>;
|
|
3340
|
-
declare const crawlerRuleRecommendationSchema: z.ZodEnum<{
|
|
3340
|
+
export declare const crawlerRuleRecommendationSchema: z.ZodEnum<{
|
|
3341
3341
|
fix: "fix";
|
|
3342
3342
|
review: "review";
|
|
3343
3343
|
}>;
|
|
3344
|
-
declare const crawlerRuleCategorySchema: z.ZodEnum<{
|
|
3344
|
+
export declare const crawlerRuleCategorySchema: z.ZodEnum<{
|
|
3345
3345
|
metadata: "metadata";
|
|
3346
3346
|
canonical: "canonical";
|
|
3347
3347
|
content: "content";
|
|
@@ -3358,10 +3358,10 @@ declare const crawlerRuleCategorySchema: z.ZodEnum<{
|
|
|
3358
3358
|
"structured-data": "structured-data";
|
|
3359
3359
|
agents: "agents";
|
|
3360
3360
|
}>;
|
|
3361
|
-
declare const crawlerRuleIdSchema: z.ZodEnum<{
|
|
3361
|
+
export declare const crawlerRuleIdSchema: z.ZodEnum<{
|
|
3362
3362
|
[x: string]: string;
|
|
3363
3363
|
}>;
|
|
3364
|
-
declare const crawlerRuleInfoSchema: z.ZodObject<{
|
|
3364
|
+
export declare const crawlerRuleInfoSchema: z.ZodObject<{
|
|
3365
3365
|
id: z.ZodEnum<{
|
|
3366
3366
|
[x: string]: string;
|
|
3367
3367
|
}>;
|
|
@@ -3401,7 +3401,7 @@ declare const crawlerRuleInfoSchema: z.ZodObject<{
|
|
|
3401
3401
|
suggestedCommands: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
3402
3402
|
}, z.core.$strip>>;
|
|
3403
3403
|
}, z.core.$strip>;
|
|
3404
|
-
declare const crawlPageSnapshotSchema: z.ZodObject<{
|
|
3404
|
+
export declare const crawlPageSnapshotSchema: z.ZodObject<{
|
|
3405
3405
|
url: z.ZodString;
|
|
3406
3406
|
finalUrl: z.ZodString;
|
|
3407
3407
|
status: z.ZodNumber;
|
|
@@ -3742,10 +3742,10 @@ declare const crawlPageSnapshotSchema: z.ZodObject<{
|
|
|
3742
3742
|
raw: z.ZodString;
|
|
3743
3743
|
resolved: z.ZodOptional<z.ZodString>;
|
|
3744
3744
|
ignoredReason: z.ZodOptional<z.ZodEnum<{
|
|
3745
|
+
"invalid-url": "invalid-url";
|
|
3745
3746
|
"outside-head": "outside-head";
|
|
3746
3747
|
"alternate-qualifier": "alternate-qualifier";
|
|
3747
3748
|
fragment: "fragment";
|
|
3748
|
-
"invalid-url": "invalid-url";
|
|
3749
3749
|
"non-http-url": "non-http-url";
|
|
3750
3750
|
}>>;
|
|
3751
3751
|
streamedMetadata: z.ZodOptional<z.ZodLiteral<true>>;
|
|
@@ -4037,7 +4037,7 @@ declare const crawlPageSnapshotSchema: z.ZodObject<{
|
|
|
4037
4037
|
conversions: z.ZodOptional<z.ZodNumber>;
|
|
4038
4038
|
}, z.core.$strip>>;
|
|
4039
4039
|
}, z.core.$strip>;
|
|
4040
|
-
declare const crawlRequestObservationSchema: z.ZodUnion<readonly [z.ZodObject<{
|
|
4040
|
+
export declare const crawlRequestObservationSchema: z.ZodUnion<readonly [z.ZodObject<{
|
|
4041
4041
|
requestedUrl: z.ZodString;
|
|
4042
4042
|
outcome: z.ZodLiteral<"response">;
|
|
4043
4043
|
finalUrl: z.ZodString;
|
|
@@ -4197,7 +4197,7 @@ declare const crawlRequestObservationSchema: z.ZodUnion<readonly [z.ZodObject<{
|
|
|
4197
4197
|
error: z.ZodString;
|
|
4198
4198
|
extraction: z.ZodLiteral<"not-applicable">;
|
|
4199
4199
|
}, z.core.$strip>]>;
|
|
4200
|
-
declare const crawlIssueSchema: z.ZodObject<{
|
|
4200
|
+
export declare const crawlIssueSchema: z.ZodObject<{
|
|
4201
4201
|
ruleId: z.ZodEnum<{
|
|
4202
4202
|
[x: string]: string;
|
|
4203
4203
|
}>;
|
|
@@ -4234,7 +4234,7 @@ declare const crawlIssueSchema: z.ZodObject<{
|
|
|
4234
4234
|
position: z.ZodNumber;
|
|
4235
4235
|
}, z.core.$strip>>;
|
|
4236
4236
|
}, z.core.$strip>;
|
|
4237
|
-
declare const crawlIssueGroupSchema: z.ZodObject<{
|
|
4237
|
+
export declare const crawlIssueGroupSchema: z.ZodObject<{
|
|
4238
4238
|
ruleId: z.ZodEnum<{
|
|
4239
4239
|
[x: string]: string;
|
|
4240
4240
|
}>;
|
|
@@ -4264,7 +4264,7 @@ declare const crawlIssueGroupSchema: z.ZodObject<{
|
|
|
4264
4264
|
count: z.ZodNumber;
|
|
4265
4265
|
sampleUrls: z.ZodArray<z.ZodString>;
|
|
4266
4266
|
}, z.core.$strip>;
|
|
4267
|
-
declare const crawlTopFixSchema: z.ZodObject<{
|
|
4267
|
+
export declare const crawlTopFixSchema: z.ZodObject<{
|
|
4268
4268
|
ruleId: z.ZodEnum<{
|
|
4269
4269
|
[x: string]: string;
|
|
4270
4270
|
}>;
|
|
@@ -4323,7 +4323,7 @@ declare const crawlTopFixSchema: z.ZodObject<{
|
|
|
4323
4323
|
expected: z.ZodString;
|
|
4324
4324
|
}, z.core.$strip>;
|
|
4325
4325
|
}, z.core.$strip>;
|
|
4326
|
-
declare const crawlConfigSchema: z.ZodObject<{
|
|
4326
|
+
export declare const crawlConfigSchema: z.ZodObject<{
|
|
4327
4327
|
url: z.ZodString;
|
|
4328
4328
|
mode: z.ZodEnum<{
|
|
4329
4329
|
page: "page";
|
|
@@ -4367,7 +4367,7 @@ declare const crawlConfigSchema: z.ZodObject<{
|
|
|
4367
4367
|
}, z.core.$strip>>;
|
|
4368
4368
|
}, z.core.$strip>;
|
|
4369
4369
|
}, z.core.$strip>;
|
|
4370
|
-
declare const crawlReportSummarySchema: z.ZodObject<{
|
|
4370
|
+
export declare const crawlReportSummarySchema: z.ZodObject<{
|
|
4371
4371
|
totalPages: z.ZodNumber;
|
|
4372
4372
|
statusOnlyPages: z.ZodNumber;
|
|
4373
4373
|
indexablePages: z.ZodNumber;
|
|
@@ -4379,15 +4379,15 @@ declare const crawlReportSummarySchema: z.ZodObject<{
|
|
|
4379
4379
|
skippedUrls: z.ZodNumber;
|
|
4380
4380
|
skipReasons: z.ZodArray<z.ZodObject<{
|
|
4381
4381
|
reason: z.ZodEnum<{
|
|
4382
|
-
"invalid-url": "invalid-url";
|
|
4383
|
-
"robots-disallowed": "robots-disallowed";
|
|
4384
|
-
"origin-backpressure": "origin-backpressure";
|
|
4385
4382
|
"asset-url": "asset-url";
|
|
4386
4383
|
"configured-exclusion": "configured-exclusion";
|
|
4387
4384
|
"duplicate-normalization": "duplicate-normalization";
|
|
4385
|
+
"invalid-url": "invalid-url";
|
|
4388
4386
|
"memory-pressure": "memory-pressure";
|
|
4389
4387
|
"off-origin": "off-origin";
|
|
4388
|
+
"origin-backpressure": "origin-backpressure";
|
|
4390
4389
|
"queue-safety-limit": "queue-safety-limit";
|
|
4390
|
+
"robots-disallowed": "robots-disallowed";
|
|
4391
4391
|
"robots-uncertain": "robots-uncertain";
|
|
4392
4392
|
"legacy-unclassified": "legacy-unclassified";
|
|
4393
4393
|
}>;
|
|
@@ -4418,7 +4418,7 @@ declare const crawlReportSummarySchema: z.ZodObject<{
|
|
|
4418
4418
|
byStatus: z.ZodRecord<z.ZodString, z.ZodNumber>;
|
|
4419
4419
|
byCategory: z.ZodRecord<z.ZodString, z.ZodNumber>;
|
|
4420
4420
|
}, z.core.$strip>;
|
|
4421
|
-
declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
4421
|
+
export declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
4422
4422
|
id: z.ZodString;
|
|
4423
4423
|
definitionId: z.ZodString;
|
|
4424
4424
|
site: z.ZodOptional<z.ZodString>;
|
|
@@ -4545,15 +4545,15 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
4545
4545
|
skippedUrls: z.ZodNumber;
|
|
4546
4546
|
skipReasons: z.ZodArray<z.ZodObject<{
|
|
4547
4547
|
reason: z.ZodEnum<{
|
|
4548
|
-
"invalid-url": "invalid-url";
|
|
4549
|
-
"robots-disallowed": "robots-disallowed";
|
|
4550
|
-
"origin-backpressure": "origin-backpressure";
|
|
4551
4548
|
"asset-url": "asset-url";
|
|
4552
4549
|
"configured-exclusion": "configured-exclusion";
|
|
4553
4550
|
"duplicate-normalization": "duplicate-normalization";
|
|
4551
|
+
"invalid-url": "invalid-url";
|
|
4554
4552
|
"memory-pressure": "memory-pressure";
|
|
4555
4553
|
"off-origin": "off-origin";
|
|
4554
|
+
"origin-backpressure": "origin-backpressure";
|
|
4556
4555
|
"queue-safety-limit": "queue-safety-limit";
|
|
4556
|
+
"robots-disallowed": "robots-disallowed";
|
|
4557
4557
|
"robots-uncertain": "robots-uncertain";
|
|
4558
4558
|
"legacy-unclassified": "legacy-unclassified";
|
|
4559
4559
|
}>;
|
|
@@ -4925,10 +4925,10 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
4925
4925
|
raw: z.ZodString;
|
|
4926
4926
|
resolved: z.ZodOptional<z.ZodString>;
|
|
4927
4927
|
ignoredReason: z.ZodOptional<z.ZodEnum<{
|
|
4928
|
+
"invalid-url": "invalid-url";
|
|
4928
4929
|
"outside-head": "outside-head";
|
|
4929
4930
|
"alternate-qualifier": "alternate-qualifier";
|
|
4930
4931
|
fragment: "fragment";
|
|
4931
|
-
"invalid-url": "invalid-url";
|
|
4932
4932
|
"non-http-url": "non-http-url";
|
|
4933
4933
|
}>>;
|
|
4934
4934
|
streamedMetadata: z.ZodOptional<z.ZodLiteral<true>>;
|
|
@@ -5850,15 +5850,15 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
5850
5850
|
skippedUrls: z.ZodNumber;
|
|
5851
5851
|
skipReasons: z.ZodArray<z.ZodObject<{
|
|
5852
5852
|
reason: z.ZodEnum<{
|
|
5853
|
-
"invalid-url": "invalid-url";
|
|
5854
|
-
"robots-disallowed": "robots-disallowed";
|
|
5855
|
-
"origin-backpressure": "origin-backpressure";
|
|
5856
5853
|
"asset-url": "asset-url";
|
|
5857
5854
|
"configured-exclusion": "configured-exclusion";
|
|
5858
5855
|
"duplicate-normalization": "duplicate-normalization";
|
|
5856
|
+
"invalid-url": "invalid-url";
|
|
5859
5857
|
"memory-pressure": "memory-pressure";
|
|
5860
5858
|
"off-origin": "off-origin";
|
|
5859
|
+
"origin-backpressure": "origin-backpressure";
|
|
5861
5860
|
"queue-safety-limit": "queue-safety-limit";
|
|
5861
|
+
"robots-disallowed": "robots-disallowed";
|
|
5862
5862
|
"robots-uncertain": "robots-uncertain";
|
|
5863
5863
|
"legacy-unclassified": "legacy-unclassified";
|
|
5864
5864
|
}>;
|
|
@@ -6230,10 +6230,10 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
6230
6230
|
raw: z.ZodString;
|
|
6231
6231
|
resolved: z.ZodOptional<z.ZodString>;
|
|
6232
6232
|
ignoredReason: z.ZodOptional<z.ZodEnum<{
|
|
6233
|
+
"invalid-url": "invalid-url";
|
|
6233
6234
|
"outside-head": "outside-head";
|
|
6234
6235
|
"alternate-qualifier": "alternate-qualifier";
|
|
6235
6236
|
fragment: "fragment";
|
|
6236
|
-
"invalid-url": "invalid-url";
|
|
6237
6237
|
"non-http-url": "non-http-url";
|
|
6238
6238
|
}>>;
|
|
6239
6239
|
streamedMetadata: z.ZodOptional<z.ZodLiteral<true>>;
|
|
@@ -7155,15 +7155,15 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
7155
7155
|
skippedUrls: z.ZodNumber;
|
|
7156
7156
|
skipReasons: z.ZodArray<z.ZodObject<{
|
|
7157
7157
|
reason: z.ZodEnum<{
|
|
7158
|
-
"invalid-url": "invalid-url";
|
|
7159
|
-
"robots-disallowed": "robots-disallowed";
|
|
7160
|
-
"origin-backpressure": "origin-backpressure";
|
|
7161
7158
|
"asset-url": "asset-url";
|
|
7162
7159
|
"configured-exclusion": "configured-exclusion";
|
|
7163
7160
|
"duplicate-normalization": "duplicate-normalization";
|
|
7161
|
+
"invalid-url": "invalid-url";
|
|
7164
7162
|
"memory-pressure": "memory-pressure";
|
|
7165
7163
|
"off-origin": "off-origin";
|
|
7164
|
+
"origin-backpressure": "origin-backpressure";
|
|
7166
7165
|
"queue-safety-limit": "queue-safety-limit";
|
|
7166
|
+
"robots-disallowed": "robots-disallowed";
|
|
7167
7167
|
"robots-uncertain": "robots-uncertain";
|
|
7168
7168
|
"legacy-unclassified": "legacy-unclassified";
|
|
7169
7169
|
}>;
|
|
@@ -7535,10 +7535,10 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
7535
7535
|
raw: z.ZodString;
|
|
7536
7536
|
resolved: z.ZodOptional<z.ZodString>;
|
|
7537
7537
|
ignoredReason: z.ZodOptional<z.ZodEnum<{
|
|
7538
|
+
"invalid-url": "invalid-url";
|
|
7538
7539
|
"outside-head": "outside-head";
|
|
7539
7540
|
"alternate-qualifier": "alternate-qualifier";
|
|
7540
7541
|
fragment: "fragment";
|
|
7541
|
-
"invalid-url": "invalid-url";
|
|
7542
7542
|
"non-http-url": "non-http-url";
|
|
7543
7543
|
}>>;
|
|
7544
7544
|
streamedMetadata: z.ZodOptional<z.ZodLiteral<true>>;
|
|
@@ -8334,7 +8334,7 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
8334
8334
|
extraction: z.ZodLiteral<"not-applicable">;
|
|
8335
8335
|
}, z.core.$strip>]>>;
|
|
8336
8336
|
}, z.core.$strip>], "requestEvidenceStatus">;
|
|
8337
|
-
declare const crawlerSchemas: {
|
|
8337
|
+
export declare const crawlerSchemas: {
|
|
8338
8338
|
crawlReport: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
8339
8339
|
id: z.ZodString;
|
|
8340
8340
|
definitionId: z.ZodString;
|
|
@@ -8462,15 +8462,15 @@ declare const crawlerSchemas: {
|
|
|
8462
8462
|
skippedUrls: z.ZodNumber;
|
|
8463
8463
|
skipReasons: z.ZodArray<z.ZodObject<{
|
|
8464
8464
|
reason: z.ZodEnum<{
|
|
8465
|
-
"invalid-url": "invalid-url";
|
|
8466
|
-
"robots-disallowed": "robots-disallowed";
|
|
8467
|
-
"origin-backpressure": "origin-backpressure";
|
|
8468
8465
|
"asset-url": "asset-url";
|
|
8469
8466
|
"configured-exclusion": "configured-exclusion";
|
|
8470
8467
|
"duplicate-normalization": "duplicate-normalization";
|
|
8468
|
+
"invalid-url": "invalid-url";
|
|
8471
8469
|
"memory-pressure": "memory-pressure";
|
|
8472
8470
|
"off-origin": "off-origin";
|
|
8471
|
+
"origin-backpressure": "origin-backpressure";
|
|
8473
8472
|
"queue-safety-limit": "queue-safety-limit";
|
|
8473
|
+
"robots-disallowed": "robots-disallowed";
|
|
8474
8474
|
"robots-uncertain": "robots-uncertain";
|
|
8475
8475
|
"legacy-unclassified": "legacy-unclassified";
|
|
8476
8476
|
}>;
|
|
@@ -8842,10 +8842,10 @@ declare const crawlerSchemas: {
|
|
|
8842
8842
|
raw: z.ZodString;
|
|
8843
8843
|
resolved: z.ZodOptional<z.ZodString>;
|
|
8844
8844
|
ignoredReason: z.ZodOptional<z.ZodEnum<{
|
|
8845
|
+
"invalid-url": "invalid-url";
|
|
8845
8846
|
"outside-head": "outside-head";
|
|
8846
8847
|
"alternate-qualifier": "alternate-qualifier";
|
|
8847
8848
|
fragment: "fragment";
|
|
8848
|
-
"invalid-url": "invalid-url";
|
|
8849
8849
|
"non-http-url": "non-http-url";
|
|
8850
8850
|
}>>;
|
|
8851
8851
|
streamedMetadata: z.ZodOptional<z.ZodLiteral<true>>;
|
|
@@ -9767,15 +9767,15 @@ declare const crawlerSchemas: {
|
|
|
9767
9767
|
skippedUrls: z.ZodNumber;
|
|
9768
9768
|
skipReasons: z.ZodArray<z.ZodObject<{
|
|
9769
9769
|
reason: z.ZodEnum<{
|
|
9770
|
-
"invalid-url": "invalid-url";
|
|
9771
|
-
"robots-disallowed": "robots-disallowed";
|
|
9772
|
-
"origin-backpressure": "origin-backpressure";
|
|
9773
9770
|
"asset-url": "asset-url";
|
|
9774
9771
|
"configured-exclusion": "configured-exclusion";
|
|
9775
9772
|
"duplicate-normalization": "duplicate-normalization";
|
|
9773
|
+
"invalid-url": "invalid-url";
|
|
9776
9774
|
"memory-pressure": "memory-pressure";
|
|
9777
9775
|
"off-origin": "off-origin";
|
|
9776
|
+
"origin-backpressure": "origin-backpressure";
|
|
9778
9777
|
"queue-safety-limit": "queue-safety-limit";
|
|
9778
|
+
"robots-disallowed": "robots-disallowed";
|
|
9779
9779
|
"robots-uncertain": "robots-uncertain";
|
|
9780
9780
|
"legacy-unclassified": "legacy-unclassified";
|
|
9781
9781
|
}>;
|
|
@@ -10147,10 +10147,10 @@ declare const crawlerSchemas: {
|
|
|
10147
10147
|
raw: z.ZodString;
|
|
10148
10148
|
resolved: z.ZodOptional<z.ZodString>;
|
|
10149
10149
|
ignoredReason: z.ZodOptional<z.ZodEnum<{
|
|
10150
|
+
"invalid-url": "invalid-url";
|
|
10150
10151
|
"outside-head": "outside-head";
|
|
10151
10152
|
"alternate-qualifier": "alternate-qualifier";
|
|
10152
10153
|
fragment: "fragment";
|
|
10153
|
-
"invalid-url": "invalid-url";
|
|
10154
10154
|
"non-http-url": "non-http-url";
|
|
10155
10155
|
}>>;
|
|
10156
10156
|
streamedMetadata: z.ZodOptional<z.ZodLiteral<true>>;
|
|
@@ -11072,15 +11072,15 @@ declare const crawlerSchemas: {
|
|
|
11072
11072
|
skippedUrls: z.ZodNumber;
|
|
11073
11073
|
skipReasons: z.ZodArray<z.ZodObject<{
|
|
11074
11074
|
reason: z.ZodEnum<{
|
|
11075
|
-
"invalid-url": "invalid-url";
|
|
11076
|
-
"robots-disallowed": "robots-disallowed";
|
|
11077
|
-
"origin-backpressure": "origin-backpressure";
|
|
11078
11075
|
"asset-url": "asset-url";
|
|
11079
11076
|
"configured-exclusion": "configured-exclusion";
|
|
11080
11077
|
"duplicate-normalization": "duplicate-normalization";
|
|
11078
|
+
"invalid-url": "invalid-url";
|
|
11081
11079
|
"memory-pressure": "memory-pressure";
|
|
11082
11080
|
"off-origin": "off-origin";
|
|
11081
|
+
"origin-backpressure": "origin-backpressure";
|
|
11083
11082
|
"queue-safety-limit": "queue-safety-limit";
|
|
11083
|
+
"robots-disallowed": "robots-disallowed";
|
|
11084
11084
|
"robots-uncertain": "robots-uncertain";
|
|
11085
11085
|
"legacy-unclassified": "legacy-unclassified";
|
|
11086
11086
|
}>;
|
|
@@ -11452,10 +11452,10 @@ declare const crawlerSchemas: {
|
|
|
11452
11452
|
raw: z.ZodString;
|
|
11453
11453
|
resolved: z.ZodOptional<z.ZodString>;
|
|
11454
11454
|
ignoredReason: z.ZodOptional<z.ZodEnum<{
|
|
11455
|
+
"invalid-url": "invalid-url";
|
|
11455
11456
|
"outside-head": "outside-head";
|
|
11456
11457
|
"alternate-qualifier": "alternate-qualifier";
|
|
11457
11458
|
fragment: "fragment";
|
|
11458
|
-
"invalid-url": "invalid-url";
|
|
11459
11459
|
"non-http-url": "non-http-url";
|
|
11460
11460
|
}>>;
|
|
11461
11461
|
streamedMetadata: z.ZodOptional<z.ZodLiteral<true>>;
|
|
@@ -12881,10 +12881,10 @@ declare const crawlerSchemas: {
|
|
|
12881
12881
|
raw: z.ZodString;
|
|
12882
12882
|
resolved: z.ZodOptional<z.ZodString>;
|
|
12883
12883
|
ignoredReason: z.ZodOptional<z.ZodEnum<{
|
|
12884
|
+
"invalid-url": "invalid-url";
|
|
12884
12885
|
"outside-head": "outside-head";
|
|
12885
12886
|
"alternate-qualifier": "alternate-qualifier";
|
|
12886
12887
|
fragment: "fragment";
|
|
12887
|
-
"invalid-url": "invalid-url";
|
|
12888
12888
|
"non-http-url": "non-http-url";
|
|
12889
12889
|
}>>;
|
|
12890
12890
|
streamedMetadata: z.ZodOptional<z.ZodLiteral<true>>;
|
|
@@ -13177,7 +13177,7 @@ declare const crawlerSchemas: {
|
|
|
13177
13177
|
}, z.core.$strip>>;
|
|
13178
13178
|
}, z.core.$strip>;
|
|
13179
13179
|
};
|
|
13180
|
-
declare const crawlerJsonSchemas: {
|
|
13180
|
+
export declare const crawlerJsonSchemas: {
|
|
13181
13181
|
crawlReport: z.core.ZodStandardJSONSchemaPayload<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
13182
13182
|
id: z.ZodString;
|
|
13183
13183
|
definitionId: z.ZodString;
|
|
@@ -13305,15 +13305,15 @@ declare const crawlerJsonSchemas: {
|
|
|
13305
13305
|
skippedUrls: z.ZodNumber;
|
|
13306
13306
|
skipReasons: z.ZodArray<z.ZodObject<{
|
|
13307
13307
|
reason: z.ZodEnum<{
|
|
13308
|
-
"invalid-url": "invalid-url";
|
|
13309
|
-
"robots-disallowed": "robots-disallowed";
|
|
13310
|
-
"origin-backpressure": "origin-backpressure";
|
|
13311
13308
|
"asset-url": "asset-url";
|
|
13312
13309
|
"configured-exclusion": "configured-exclusion";
|
|
13313
13310
|
"duplicate-normalization": "duplicate-normalization";
|
|
13311
|
+
"invalid-url": "invalid-url";
|
|
13314
13312
|
"memory-pressure": "memory-pressure";
|
|
13315
13313
|
"off-origin": "off-origin";
|
|
13314
|
+
"origin-backpressure": "origin-backpressure";
|
|
13316
13315
|
"queue-safety-limit": "queue-safety-limit";
|
|
13316
|
+
"robots-disallowed": "robots-disallowed";
|
|
13317
13317
|
"robots-uncertain": "robots-uncertain";
|
|
13318
13318
|
"legacy-unclassified": "legacy-unclassified";
|
|
13319
13319
|
}>;
|
|
@@ -13685,10 +13685,10 @@ declare const crawlerJsonSchemas: {
|
|
|
13685
13685
|
raw: z.ZodString;
|
|
13686
13686
|
resolved: z.ZodOptional<z.ZodString>;
|
|
13687
13687
|
ignoredReason: z.ZodOptional<z.ZodEnum<{
|
|
13688
|
+
"invalid-url": "invalid-url";
|
|
13688
13689
|
"outside-head": "outside-head";
|
|
13689
13690
|
"alternate-qualifier": "alternate-qualifier";
|
|
13690
13691
|
fragment: "fragment";
|
|
13691
|
-
"invalid-url": "invalid-url";
|
|
13692
13692
|
"non-http-url": "non-http-url";
|
|
13693
13693
|
}>>;
|
|
13694
13694
|
streamedMetadata: z.ZodOptional<z.ZodLiteral<true>>;
|
|
@@ -14610,15 +14610,15 @@ declare const crawlerJsonSchemas: {
|
|
|
14610
14610
|
skippedUrls: z.ZodNumber;
|
|
14611
14611
|
skipReasons: z.ZodArray<z.ZodObject<{
|
|
14612
14612
|
reason: z.ZodEnum<{
|
|
14613
|
-
"invalid-url": "invalid-url";
|
|
14614
|
-
"robots-disallowed": "robots-disallowed";
|
|
14615
|
-
"origin-backpressure": "origin-backpressure";
|
|
14616
14613
|
"asset-url": "asset-url";
|
|
14617
14614
|
"configured-exclusion": "configured-exclusion";
|
|
14618
14615
|
"duplicate-normalization": "duplicate-normalization";
|
|
14616
|
+
"invalid-url": "invalid-url";
|
|
14619
14617
|
"memory-pressure": "memory-pressure";
|
|
14620
14618
|
"off-origin": "off-origin";
|
|
14619
|
+
"origin-backpressure": "origin-backpressure";
|
|
14621
14620
|
"queue-safety-limit": "queue-safety-limit";
|
|
14621
|
+
"robots-disallowed": "robots-disallowed";
|
|
14622
14622
|
"robots-uncertain": "robots-uncertain";
|
|
14623
14623
|
"legacy-unclassified": "legacy-unclassified";
|
|
14624
14624
|
}>;
|
|
@@ -14990,10 +14990,10 @@ declare const crawlerJsonSchemas: {
|
|
|
14990
14990
|
raw: z.ZodString;
|
|
14991
14991
|
resolved: z.ZodOptional<z.ZodString>;
|
|
14992
14992
|
ignoredReason: z.ZodOptional<z.ZodEnum<{
|
|
14993
|
+
"invalid-url": "invalid-url";
|
|
14993
14994
|
"outside-head": "outside-head";
|
|
14994
14995
|
"alternate-qualifier": "alternate-qualifier";
|
|
14995
14996
|
fragment: "fragment";
|
|
14996
|
-
"invalid-url": "invalid-url";
|
|
14997
14997
|
"non-http-url": "non-http-url";
|
|
14998
14998
|
}>>;
|
|
14999
14999
|
streamedMetadata: z.ZodOptional<z.ZodLiteral<true>>;
|
|
@@ -15915,15 +15915,15 @@ declare const crawlerJsonSchemas: {
|
|
|
15915
15915
|
skippedUrls: z.ZodNumber;
|
|
15916
15916
|
skipReasons: z.ZodArray<z.ZodObject<{
|
|
15917
15917
|
reason: z.ZodEnum<{
|
|
15918
|
-
"invalid-url": "invalid-url";
|
|
15919
|
-
"robots-disallowed": "robots-disallowed";
|
|
15920
|
-
"origin-backpressure": "origin-backpressure";
|
|
15921
15918
|
"asset-url": "asset-url";
|
|
15922
15919
|
"configured-exclusion": "configured-exclusion";
|
|
15923
15920
|
"duplicate-normalization": "duplicate-normalization";
|
|
15921
|
+
"invalid-url": "invalid-url";
|
|
15924
15922
|
"memory-pressure": "memory-pressure";
|
|
15925
15923
|
"off-origin": "off-origin";
|
|
15924
|
+
"origin-backpressure": "origin-backpressure";
|
|
15926
15925
|
"queue-safety-limit": "queue-safety-limit";
|
|
15926
|
+
"robots-disallowed": "robots-disallowed";
|
|
15927
15927
|
"robots-uncertain": "robots-uncertain";
|
|
15928
15928
|
"legacy-unclassified": "legacy-unclassified";
|
|
15929
15929
|
}>;
|
|
@@ -16295,10 +16295,10 @@ declare const crawlerJsonSchemas: {
|
|
|
16295
16295
|
raw: z.ZodString;
|
|
16296
16296
|
resolved: z.ZodOptional<z.ZodString>;
|
|
16297
16297
|
ignoredReason: z.ZodOptional<z.ZodEnum<{
|
|
16298
|
+
"invalid-url": "invalid-url";
|
|
16298
16299
|
"outside-head": "outside-head";
|
|
16299
16300
|
"alternate-qualifier": "alternate-qualifier";
|
|
16300
16301
|
fragment: "fragment";
|
|
16301
|
-
"invalid-url": "invalid-url";
|
|
16302
16302
|
"non-http-url": "non-http-url";
|
|
16303
16303
|
}>>;
|
|
16304
16304
|
streamedMetadata: z.ZodOptional<z.ZodLiteral<true>>;
|
|
@@ -17724,10 +17724,10 @@ declare const crawlerJsonSchemas: {
|
|
|
17724
17724
|
raw: z.ZodString;
|
|
17725
17725
|
resolved: z.ZodOptional<z.ZodString>;
|
|
17726
17726
|
ignoredReason: z.ZodOptional<z.ZodEnum<{
|
|
17727
|
+
"invalid-url": "invalid-url";
|
|
17727
17728
|
"outside-head": "outside-head";
|
|
17728
17729
|
"alternate-qualifier": "alternate-qualifier";
|
|
17729
17730
|
fragment: "fragment";
|
|
17730
|
-
"invalid-url": "invalid-url";
|
|
17731
17731
|
"non-http-url": "non-http-url";
|
|
17732
17732
|
}>>;
|
|
17733
17733
|
streamedMetadata: z.ZodOptional<z.ZodLiteral<true>>;
|
|
@@ -18022,30 +18022,30 @@ declare const crawlerJsonSchemas: {
|
|
|
18022
18022
|
};
|
|
18023
18023
|
//#endregion
|
|
18024
18024
|
//#region packages/core/src/fetch/crawler-identity.d.ts
|
|
18025
|
-
declare const SEO_CRAWLER_TOKEN = "SEO-Skill";
|
|
18026
|
-
declare const SEO_CRAWLER_USER_AGENT: string;
|
|
18027
|
-
declare const SEO_CRAWLER_IDENTITY: CrawlerIdentity;
|
|
18025
|
+
export declare const SEO_CRAWLER_TOKEN = "SEO-Skill";
|
|
18026
|
+
export declare const SEO_CRAWLER_USER_AGENT: string;
|
|
18027
|
+
export declare const SEO_CRAWLER_IDENTITY: CrawlerIdentity;
|
|
18028
18028
|
//#endregion
|
|
18029
18029
|
//#region packages/core/src/fetch/http-client.d.ts
|
|
18030
|
-
type HttpProfile = 'browser' | 'bot';
|
|
18031
|
-
declare class ResponseSizeLimitError extends Error {
|
|
18030
|
+
export type HttpProfile = 'browser' | 'bot';
|
|
18031
|
+
export declare class ResponseSizeLimitError extends Error {
|
|
18032
18032
|
readonly maxBytes: number;
|
|
18033
18033
|
constructor(maxBytes: number, label?: string);
|
|
18034
18034
|
}
|
|
18035
18035
|
/** @deprecated Use SEO_CRAWLER_USER_AGENT. */
|
|
18036
|
-
declare const BROWSER_USER_AGENT: string;
|
|
18037
|
-
declare function requestHeaders(profile: HttpProfile): Headers$1;
|
|
18038
|
-
declare function publicHttpFetch(url: string, input?: RequestInit$1 & {
|
|
18036
|
+
export declare const BROWSER_USER_AGENT: string;
|
|
18037
|
+
export declare function requestHeaders(profile: HttpProfile): Headers$1;
|
|
18038
|
+
export declare function publicHttpFetch(url: string, input?: RequestInit$1 & {
|
|
18039
18039
|
profile?: HttpProfile;
|
|
18040
18040
|
}): Promise<import("undici").Response>;
|
|
18041
|
-
declare function readBoundedResponseText(response: Awaited<ReturnType<typeof publicHttpFetch>>, maxBytes: number, label?: string): Promise<string>;
|
|
18041
|
+
export declare function readBoundedResponseText(response: Awaited<ReturnType<typeof publicHttpFetch>>, maxBytes: number, label?: string): Promise<string>;
|
|
18042
18042
|
//#endregion
|
|
18043
18043
|
//#region packages/core/src/provider-extensions/contracts.d.ts
|
|
18044
|
-
declare const providerExtensionIdSchema: z.ZodString;
|
|
18045
|
-
declare const providerPackageNameSchema: z.ZodString;
|
|
18046
|
-
declare const providerExactVersionSchema: z.ZodString;
|
|
18047
|
-
declare const providerIntegritySchema: z.ZodString;
|
|
18048
|
-
declare const providerKindSchema: z.ZodEnum<{
|
|
18044
|
+
export declare const providerExtensionIdSchema: z.ZodString;
|
|
18045
|
+
export declare const providerPackageNameSchema: z.ZodString;
|
|
18046
|
+
export declare const providerExactVersionSchema: z.ZodString;
|
|
18047
|
+
export declare const providerIntegritySchema: z.ZodString;
|
|
18048
|
+
export declare const providerKindSchema: z.ZodEnum<{
|
|
18049
18049
|
"traffic-analytics": "traffic-analytics";
|
|
18050
18050
|
"search-results": "search-results";
|
|
18051
18051
|
"keyword-data": "keyword-data";
|
|
@@ -18055,7 +18055,7 @@ declare const providerKindSchema: z.ZodEnum<{
|
|
|
18055
18055
|
"ai-data": "ai-data";
|
|
18056
18056
|
other: "other";
|
|
18057
18057
|
}>;
|
|
18058
|
-
declare const providerConnectionFieldSchema: z.ZodObject<{
|
|
18058
|
+
export declare const providerConnectionFieldSchema: z.ZodObject<{
|
|
18059
18059
|
id: z.ZodString;
|
|
18060
18060
|
label: z.ZodString;
|
|
18061
18061
|
description: z.ZodOptional<z.ZodString>;
|
|
@@ -18066,11 +18066,11 @@ declare const providerConnectionFieldSchema: z.ZodObject<{
|
|
|
18066
18066
|
required: z.ZodOptional<z.ZodBoolean>;
|
|
18067
18067
|
envVar: z.ZodOptional<z.ZodString>;
|
|
18068
18068
|
}, z.core.$strict>;
|
|
18069
|
-
declare const providerPackageManifestSchema: z.ZodObject<{
|
|
18069
|
+
export declare const providerPackageManifestSchema: z.ZodObject<{
|
|
18070
18070
|
apiVersion: z.ZodLiteral<1>;
|
|
18071
18071
|
providers: z.ZodArray<z.ZodString>;
|
|
18072
18072
|
}, z.core.$strict>;
|
|
18073
|
-
declare const installedProviderPackageSchema: z.ZodObject<{
|
|
18073
|
+
export declare const installedProviderPackageSchema: z.ZodObject<{
|
|
18074
18074
|
id: z.ZodString;
|
|
18075
18075
|
package: z.ZodString;
|
|
18076
18076
|
version: z.ZodString;
|
|
@@ -18078,7 +18078,7 @@ declare const installedProviderPackageSchema: z.ZodObject<{
|
|
|
18078
18078
|
enabled: z.ZodBoolean;
|
|
18079
18079
|
installedAt: z.ZodString;
|
|
18080
18080
|
}, z.core.$strict>;
|
|
18081
|
-
declare const installedProviderPackagesSchema: z.ZodObject<{
|
|
18081
|
+
export declare const installedProviderPackagesSchema: z.ZodObject<{
|
|
18082
18082
|
schemaVersion: z.ZodLiteral<1>;
|
|
18083
18083
|
packages: z.ZodArray<z.ZodObject<{
|
|
18084
18084
|
id: z.ZodString;
|
|
@@ -18089,7 +18089,7 @@ declare const installedProviderPackagesSchema: z.ZodObject<{
|
|
|
18089
18089
|
installedAt: z.ZodString;
|
|
18090
18090
|
}, z.core.$strict>>;
|
|
18091
18091
|
}, z.core.$strict>;
|
|
18092
|
-
declare const providerRegistrationSchema: z.ZodObject<{
|
|
18092
|
+
export declare const providerRegistrationSchema: z.ZodObject<{
|
|
18093
18093
|
id: z.ZodString;
|
|
18094
18094
|
displayName: z.ZodString;
|
|
18095
18095
|
description: z.ZodString;
|
|
@@ -18107,16 +18107,16 @@ declare const providerRegistrationSchema: z.ZodObject<{
|
|
|
18107
18107
|
capabilities: z.ZodArray<z.ZodType<SeoProviderCapabilityAdapter, unknown, z.core.$ZodTypeInternals<SeoProviderCapabilityAdapter, unknown>>>;
|
|
18108
18108
|
actions: z.ZodOptional<z.ZodArray<z.ZodCustom<SeoProviderActionAdapter, SeoProviderActionAdapter>>>;
|
|
18109
18109
|
}, z.core.$strict>;
|
|
18110
|
-
type ProviderPackageManifest = z.infer<typeof providerPackageManifestSchema>;
|
|
18111
|
-
type InstalledProviderPackage = z.infer<typeof installedProviderPackageSchema>;
|
|
18112
|
-
type InstalledProviderPackages = z.infer<typeof installedProviderPackagesSchema>;
|
|
18110
|
+
export type ProviderPackageManifest = z.infer<typeof providerPackageManifestSchema>;
|
|
18111
|
+
export type InstalledProviderPackage = z.infer<typeof installedProviderPackageSchema>;
|
|
18112
|
+
export type InstalledProviderPackages = z.infer<typeof installedProviderPackagesSchema>;
|
|
18113
18113
|
//#endregion
|
|
18114
18114
|
//#region packages/core/src/provider-extensions/registry.d.ts
|
|
18115
|
-
type RegisteredProviderExtension = SeoProviderRegistration & {
|
|
18115
|
+
export type RegisteredProviderExtension = SeoProviderRegistration & {
|
|
18116
18116
|
package: string;
|
|
18117
18117
|
version: string;
|
|
18118
18118
|
};
|
|
18119
|
-
declare class ProviderExtensionRegistry {
|
|
18119
|
+
export declare class ProviderExtensionRegistry {
|
|
18120
18120
|
#private;
|
|
18121
18121
|
hostFor(input: {
|
|
18122
18122
|
package: string;
|
|
@@ -18135,43 +18135,43 @@ declare class ProviderExtensionRegistry {
|
|
|
18135
18135
|
type ImportedProviderModule = {
|
|
18136
18136
|
default?: unknown;
|
|
18137
18137
|
};
|
|
18138
|
-
type ProviderExtensionLoadFailure = {
|
|
18138
|
+
export type ProviderExtensionLoadFailure = {
|
|
18139
18139
|
id: string;
|
|
18140
18140
|
package: string;
|
|
18141
18141
|
message: string;
|
|
18142
18142
|
};
|
|
18143
|
-
type LoadedProviderExtensions = {
|
|
18143
|
+
export type LoadedProviderExtensions = {
|
|
18144
18144
|
registry: ProviderExtensionRegistry;
|
|
18145
18145
|
failures: ProviderExtensionLoadFailure[];
|
|
18146
18146
|
};
|
|
18147
|
-
type ProviderExtensionLoaderOptions = {
|
|
18147
|
+
export type ProviderExtensionLoaderOptions = {
|
|
18148
18148
|
registry?: ProviderExtensionRegistry;
|
|
18149
18149
|
packagesDir?: string;
|
|
18150
18150
|
installed?: readonly InstalledProviderPackage[];
|
|
18151
18151
|
importModule?: (url: string) => Promise<ImportedProviderModule>;
|
|
18152
18152
|
};
|
|
18153
|
-
declare function loadProviderPackage(input: {
|
|
18153
|
+
export declare function loadProviderPackage(input: {
|
|
18154
18154
|
package: string;
|
|
18155
18155
|
version: string;
|
|
18156
18156
|
}, options: {
|
|
18157
18157
|
packagesDir: string;
|
|
18158
18158
|
importModule?: (url: string) => Promise<ImportedProviderModule>;
|
|
18159
18159
|
}): Promise<RegisteredProviderExtension[]>;
|
|
18160
|
-
declare function loadInstalledProviderExtensions(options?: ProviderExtensionLoaderOptions): Promise<LoadedProviderExtensions>;
|
|
18160
|
+
export declare function loadInstalledProviderExtensions(options?: ProviderExtensionLoaderOptions): Promise<LoadedProviderExtensions>;
|
|
18161
18161
|
//#endregion
|
|
18162
18162
|
//#region packages/core/src/providers/imports/research-columns.d.ts
|
|
18163
|
-
declare const RESEARCH_IMPORT_COLUMN_KEYS: readonly ["keyword", "url", "position", "absolutePosition", "searchVolume", "keywordDifficulty", "cpc", "paidCompetition", "intent", "resultCount", "estimatedTraffic", "resultType", "searchVolumeUpdatedAt"];
|
|
18164
|
-
type ResearchImportColumn = (typeof RESEARCH_IMPORT_COLUMN_KEYS)[number];
|
|
18165
|
-
type ResearchImportColumns = Partial<Record<ResearchImportColumn, string>>;
|
|
18166
|
-
declare function normalizedResearchColumnName(value: string): string;
|
|
18167
|
-
declare function researchImportColumns(value: ResearchImportColumns | undefined): ResearchImportColumns | undefined;
|
|
18168
|
-
declare function validateResearchImportColumnSources(columns: ResearchImportColumns | undefined, includedFields: Iterable<string>): void;
|
|
18163
|
+
export declare const RESEARCH_IMPORT_COLUMN_KEYS: readonly ["keyword", "url", "position", "absolutePosition", "searchVolume", "keywordDifficulty", "cpc", "paidCompetition", "intent", "resultCount", "estimatedTraffic", "resultType", "searchVolumeUpdatedAt"];
|
|
18164
|
+
export type ResearchImportColumn = (typeof RESEARCH_IMPORT_COLUMN_KEYS)[number];
|
|
18165
|
+
export type ResearchImportColumns = Partial<Record<ResearchImportColumn, string>>;
|
|
18166
|
+
export declare function normalizedResearchColumnName(value: string): string;
|
|
18167
|
+
export declare function researchImportColumns(value: ResearchImportColumns | undefined): ResearchImportColumns | undefined;
|
|
18168
|
+
export declare function validateResearchImportColumnSources(columns: ResearchImportColumns | undefined, includedFields: Iterable<string>): void;
|
|
18169
18169
|
//#endregion
|
|
18170
18170
|
//#region packages/core/src/providers/contracts.d.ts
|
|
18171
|
-
declare const providerIdSchema: z.ZodString;
|
|
18172
|
-
type ProviderId = z.infer<typeof providerIdSchema>;
|
|
18173
|
-
type ExternalServiceId = string;
|
|
18174
|
-
declare const providerCapabilitySchema: z.ZodEnum<{
|
|
18171
|
+
export declare const providerIdSchema: z.ZodString;
|
|
18172
|
+
export type ProviderId = z.infer<typeof providerIdSchema>;
|
|
18173
|
+
export type ExternalServiceId = string;
|
|
18174
|
+
export declare const providerCapabilitySchema: z.ZodEnum<{
|
|
18175
18175
|
"local-search": "local-search";
|
|
18176
18176
|
"serp-snapshot": "serp-snapshot";
|
|
18177
18177
|
"keyword-metrics": "keyword-metrics";
|
|
@@ -18187,8 +18187,8 @@ declare const providerCapabilitySchema: z.ZodEnum<{
|
|
|
18187
18187
|
"ai-mentions": "ai-mentions";
|
|
18188
18188
|
"ai-prompt-observation": "ai-prompt-observation";
|
|
18189
18189
|
}>;
|
|
18190
|
-
type ProviderCapability = z.infer<typeof providerCapabilitySchema>;
|
|
18191
|
-
type ProviderValue<T> = {
|
|
18190
|
+
export type ProviderCapability = z.infer<typeof providerCapabilitySchema>;
|
|
18191
|
+
export type ProviderValue<T> = {
|
|
18192
18192
|
state: 'observed';
|
|
18193
18193
|
value: T;
|
|
18194
18194
|
} | {
|
|
@@ -18196,13 +18196,13 @@ type ProviderValue<T> = {
|
|
|
18196
18196
|
value: null;
|
|
18197
18197
|
reason: string;
|
|
18198
18198
|
};
|
|
18199
|
-
type ProviderWarning = {
|
|
18199
|
+
export type ProviderWarning = {
|
|
18200
18200
|
code: string;
|
|
18201
18201
|
message: string;
|
|
18202
18202
|
field?: string;
|
|
18203
18203
|
row?: number;
|
|
18204
18204
|
};
|
|
18205
|
-
type ProviderImportEvidence = {
|
|
18205
|
+
export type ProviderImportEvidence = {
|
|
18206
18206
|
provider: ProviderId;
|
|
18207
18207
|
path: string;
|
|
18208
18208
|
format: 'csv' | 'json' | 'jsonl';
|
|
@@ -18224,7 +18224,7 @@ type ProviderImportEvidence = {
|
|
|
18224
18224
|
capped: boolean;
|
|
18225
18225
|
rowLimit: number;
|
|
18226
18226
|
};
|
|
18227
|
-
type KeywordMetric = {
|
|
18227
|
+
export type KeywordMetric = {
|
|
18228
18228
|
keyword: string;
|
|
18229
18229
|
monthlySearchVolume: ProviderValue<number>;
|
|
18230
18230
|
monthlySearches: ProviderValue<KeywordMonthlySearch[]>;
|
|
@@ -18235,15 +18235,15 @@ type KeywordMetric = {
|
|
|
18235
18235
|
intent: ProviderValue<string>;
|
|
18236
18236
|
resultCount: ProviderValue<number>;
|
|
18237
18237
|
};
|
|
18238
|
-
type KeywordMonthlySearch = {
|
|
18238
|
+
export type KeywordMonthlySearch = {
|
|
18239
18239
|
year: number;
|
|
18240
18240
|
month: number;
|
|
18241
18241
|
searchVolume: number;
|
|
18242
18242
|
};
|
|
18243
18243
|
//#endregion
|
|
18244
18244
|
//#region packages/core/src/providers/transport.d.ts
|
|
18245
|
-
type ProviderFetch = (url: string | URL, init?: RequestInit$1) => Promise<Response$1>;
|
|
18246
|
-
type ProviderRequestInput = {
|
|
18245
|
+
export type ProviderFetch = (url: string | URL, init?: RequestInit$1) => Promise<Response$1>;
|
|
18246
|
+
export type ProviderRequestInput = {
|
|
18247
18247
|
provider: ExternalServiceId;
|
|
18248
18248
|
operation: string;
|
|
18249
18249
|
url: string | URL;
|
|
@@ -18255,22 +18255,22 @@ type ProviderRequestInput = {
|
|
|
18255
18255
|
retryDelayMs?: number;
|
|
18256
18256
|
onResponse?: (response: Response$1) => void;
|
|
18257
18257
|
};
|
|
18258
|
-
declare function providerRequestText(input: ProviderRequestInput): Promise<string>;
|
|
18259
|
-
declare function providerRequestJson<T>(input: ProviderRequestInput & {
|
|
18258
|
+
export declare function providerRequestText(input: ProviderRequestInput): Promise<string>;
|
|
18259
|
+
export declare function providerRequestJson<T>(input: ProviderRequestInput & {
|
|
18260
18260
|
schema: z.ZodType<T>;
|
|
18261
18261
|
}): Promise<T>;
|
|
18262
18262
|
//#endregion
|
|
18263
18263
|
//#region packages/core/src/provider-extensions/runtime.d.ts
|
|
18264
|
-
type ProviderRuntimeOptions = {
|
|
18264
|
+
export type ProviderRuntimeOptions = {
|
|
18265
18265
|
fetch?: ProviderFetch;
|
|
18266
18266
|
maxRequests?: number;
|
|
18267
18267
|
now?: () => Date;
|
|
18268
18268
|
};
|
|
18269
|
-
declare function normalizeProviderExtensionAccount(provider: Pick<SeoProviderRegistration, 'displayName' | 'connection'>, account: Readonly<Record<string, string>>): Record<string, string>;
|
|
18270
|
-
declare function loadProviderExtensions(): Promise<LoadedProviderExtensions>;
|
|
18271
|
-
declare function safeProviderAdapterError(providerId: string, error: unknown, credentials: Readonly<Record<string, string>>): Error;
|
|
18272
|
-
declare function runtimeForProvider(provider: string, options?: ProviderRuntimeOptions): SeoProviderRuntime;
|
|
18273
|
-
declare function verifyProviderExtension(input: {
|
|
18269
|
+
export declare function normalizeProviderExtensionAccount(provider: Pick<SeoProviderRegistration, 'displayName' | 'connection'>, account: Readonly<Record<string, string>>): Record<string, string>;
|
|
18270
|
+
export declare function loadProviderExtensions(): Promise<LoadedProviderExtensions>;
|
|
18271
|
+
export declare function safeProviderAdapterError(providerId: string, error: unknown, credentials: Readonly<Record<string, string>>): Error;
|
|
18272
|
+
export declare function runtimeForProvider(provider: string, options?: ProviderRuntimeOptions): SeoProviderRuntime;
|
|
18273
|
+
export declare function verifyProviderExtension(input: {
|
|
18274
18274
|
providerId: string;
|
|
18275
18275
|
account: Readonly<Record<string, string>>;
|
|
18276
18276
|
credentials: Readonly<Record<string, string>>;
|
|
@@ -18278,14 +18278,14 @@ declare function verifyProviderExtension(input: {
|
|
|
18278
18278
|
}): Promise<void>;
|
|
18279
18279
|
//#endregion
|
|
18280
18280
|
//#region packages/core/src/provider-extensions/analytics.d.ts
|
|
18281
|
-
type AnalyticsProviderRuntimeOptions = ProviderRuntimeOptions;
|
|
18282
|
-
declare function verifyAnalyticsProvider(input: {
|
|
18281
|
+
export type AnalyticsProviderRuntimeOptions = ProviderRuntimeOptions;
|
|
18282
|
+
export declare function verifyAnalyticsProvider(input: {
|
|
18283
18283
|
providerId: string;
|
|
18284
18284
|
account: Readonly<Record<string, string>>;
|
|
18285
18285
|
credentials: Readonly<Record<string, string>>;
|
|
18286
18286
|
runtime?: AnalyticsProviderRuntimeOptions;
|
|
18287
18287
|
}): Promise<void>;
|
|
18288
|
-
declare function runAnalyticsProviderLandingPages(input: {
|
|
18288
|
+
export declare function runAnalyticsProviderLandingPages(input: {
|
|
18289
18289
|
providerId: string;
|
|
18290
18290
|
account: Readonly<Record<string, string>>;
|
|
18291
18291
|
credentials?: Readonly<Record<string, string>>;
|
|
@@ -18352,7 +18352,7 @@ type ResolvedCrawlSiteDependencies = {
|
|
|
18352
18352
|
type CrawlSiteDependencies = Partial<ResolvedCrawlSiteDependencies>;
|
|
18353
18353
|
//#endregion
|
|
18354
18354
|
//#region packages/core/src/analyze/crawler/site-crawl.d.ts
|
|
18355
|
-
declare function crawlSite(input: CrawlConfigInput, dependencies?: CrawlSiteDependencies): Promise<CrawlReport>;
|
|
18355
|
+
export declare function crawlSite(input: CrawlConfigInput, dependencies?: CrawlSiteDependencies): Promise<CrawlReport>;
|
|
18356
18356
|
//#endregion
|
|
18357
18357
|
//#region packages/core/src/analyze/query-quality.d.ts
|
|
18358
18358
|
type QueryFlag = 'likely-automated' | 'navigational-other';
|
|
@@ -18436,11 +18436,11 @@ type MinImpressionsPolicy = {
|
|
|
18436
18436
|
};
|
|
18437
18437
|
//#endregion
|
|
18438
18438
|
//#region packages/core/src/analyze/ctr-underperformers-report.d.ts
|
|
18439
|
-
interface CtrUnderperformerDependencies {
|
|
18439
|
+
export interface CtrUnderperformerDependencies {
|
|
18440
18440
|
searchAnalytics: SearchAnalyticsQuery;
|
|
18441
18441
|
now: () => Date;
|
|
18442
18442
|
}
|
|
18443
|
-
type CtrUnderperformersInput = {
|
|
18443
|
+
export type CtrUnderperformersInput = {
|
|
18444
18444
|
site: string;
|
|
18445
18445
|
/** Window length in days; ignored when startDate and endDate are given. */
|
|
18446
18446
|
days?: number;
|
|
@@ -18454,8 +18454,8 @@ type CtrUnderperformersInput = {
|
|
|
18454
18454
|
includeBrand?: boolean;
|
|
18455
18455
|
refresh?: boolean;
|
|
18456
18456
|
};
|
|
18457
|
-
type CtrUnderperformersReport = Awaited<ReturnType<typeof ctrUnderperformersReportWith>>;
|
|
18458
|
-
declare function ctrUnderperformersReportWith(input: CtrUnderperformersInput, dependencies: CtrUnderperformerDependencies): Promise<{
|
|
18457
|
+
export type CtrUnderperformersReport = Awaited<ReturnType<typeof ctrUnderperformersReportWith>>;
|
|
18458
|
+
export declare function ctrUnderperformersReportWith(input: CtrUnderperformersInput, dependencies: CtrUnderperformerDependencies): Promise<{
|
|
18459
18459
|
schemaVersion: 1;
|
|
18460
18460
|
site: string;
|
|
18461
18461
|
range: {
|
|
@@ -18549,10 +18549,10 @@ declare function ctrUnderperformersReportWith(input: CtrUnderperformersInput, de
|
|
|
18549
18549
|
}>;
|
|
18550
18550
|
//#endregion
|
|
18551
18551
|
//#region packages/core/src/analyze/ctr-underperformers-analysis.d.ts
|
|
18552
|
-
declare const CTR_MAX_MIN_IMPRESSIONS = 1000000000;
|
|
18553
|
-
declare const CTR_DEFAULT_LIMIT = 25;
|
|
18554
|
-
declare const CTR_MAX_LIMIT = 100;
|
|
18555
|
-
declare function analyzeCtrUnderperformersFromRows(input: {
|
|
18552
|
+
export declare const CTR_MAX_MIN_IMPRESSIONS = 1000000000;
|
|
18553
|
+
export declare const CTR_DEFAULT_LIMIT = 25;
|
|
18554
|
+
export declare const CTR_MAX_LIMIT = 100;
|
|
18555
|
+
export declare function analyzeCtrUnderperformersFromRows(input: {
|
|
18556
18556
|
rows: GscRow[];
|
|
18557
18557
|
site: string;
|
|
18558
18558
|
minImpressions?: number;
|
|
@@ -18572,10 +18572,10 @@ declare function analyzeCtrUnderperformersFromRows(input: {
|
|
|
18572
18572
|
};
|
|
18573
18573
|
//#endregion
|
|
18574
18574
|
//#region packages/core/src/analyze/ctr-underperformers.d.ts
|
|
18575
|
-
declare function ctrUnderperformersReport(input: CtrUnderperformersInput, dependencies?: CtrUnderperformerDependencies): Promise<CtrUnderperformersReport>;
|
|
18575
|
+
export declare function ctrUnderperformersReport(input: CtrUnderperformersInput, dependencies?: CtrUnderperformerDependencies): Promise<CtrUnderperformersReport>;
|
|
18576
18576
|
//#endregion
|
|
18577
18577
|
//#region packages/core/src/progress.d.ts
|
|
18578
|
-
type ProgressReporter = (message: string) => void;
|
|
18578
|
+
export type ProgressReporter = (message: string) => void;
|
|
18579
18579
|
//#endregion
|
|
18580
18580
|
//#region packages/core/src/analyze/segment-impact-types.d.ts
|
|
18581
18581
|
type SegmentDimension = 'page' | 'query' | 'country' | 'device';
|
|
@@ -18677,7 +18677,7 @@ type SegmentImpactReport = {
|
|
|
18677
18677
|
};
|
|
18678
18678
|
//#endregion
|
|
18679
18679
|
//#region packages/core/src/analyze/segment-impact-analysis.d.ts
|
|
18680
|
-
declare function analyzeSegmentRows(input: {
|
|
18680
|
+
export declare function analyzeSegmentRows(input: {
|
|
18681
18681
|
site: string;
|
|
18682
18682
|
dimension: SegmentImpactReport['dimension'];
|
|
18683
18683
|
before: SegmentRange;
|
|
@@ -18697,7 +18697,7 @@ declare function analyzeSegmentRows(input: {
|
|
|
18697
18697
|
}): SegmentImpactReport;
|
|
18698
18698
|
//#endregion
|
|
18699
18699
|
//#region packages/core/src/analyze/segment-impact-fallback.d.ts
|
|
18700
|
-
declare function unavailableSegmentImpactReport(input: {
|
|
18700
|
+
export declare function unavailableSegmentImpactReport(input: {
|
|
18701
18701
|
site: string;
|
|
18702
18702
|
dimension: SegmentDimension;
|
|
18703
18703
|
after: SegmentRange;
|
|
@@ -18706,9 +18706,9 @@ declare function unavailableSegmentImpactReport(input: {
|
|
|
18706
18706
|
}): SegmentImpactReport;
|
|
18707
18707
|
//#endregion
|
|
18708
18708
|
//#region packages/core/src/analyze/segment-impact-input.d.ts
|
|
18709
|
-
declare function segmentRangeDays(range: SegmentRange): number;
|
|
18710
|
-
declare function segmentComparisonRange(after: SegmentRange, compareDays: number): SegmentRange;
|
|
18711
|
-
declare function resolveSegmentRanges(input: {
|
|
18709
|
+
export declare function segmentRangeDays(range: SegmentRange): number;
|
|
18710
|
+
export declare function segmentComparisonRange(after: SegmentRange, compareDays: number): SegmentRange;
|
|
18711
|
+
export declare function resolveSegmentRanges(input: {
|
|
18712
18712
|
days?: number;
|
|
18713
18713
|
compareDays?: number;
|
|
18714
18714
|
startDate?: string;
|
|
@@ -18721,7 +18721,7 @@ declare function resolveSegmentRanges(input: {
|
|
|
18721
18721
|
//#endregion
|
|
18722
18722
|
//#region packages/core/src/analyze/segment-impact.d.ts
|
|
18723
18723
|
type SearchAnalytics$1 = typeof querySearchAnalytics;
|
|
18724
|
-
interface SegmentImpactInput {
|
|
18724
|
+
export interface SegmentImpactInput {
|
|
18725
18725
|
site: string;
|
|
18726
18726
|
dimension?: SegmentDimension;
|
|
18727
18727
|
days?: number;
|
|
@@ -18733,11 +18733,11 @@ interface SegmentImpactInput {
|
|
|
18733
18733
|
maxRows?: number;
|
|
18734
18734
|
refresh?: boolean;
|
|
18735
18735
|
}
|
|
18736
|
-
interface SegmentImpactDependencies {
|
|
18736
|
+
export interface SegmentImpactDependencies {
|
|
18737
18737
|
searchAnalytics: SearchAnalytics$1;
|
|
18738
18738
|
now: () => Date;
|
|
18739
18739
|
}
|
|
18740
|
-
declare function compareSegmentRows(input: {
|
|
18740
|
+
export declare function compareSegmentRows(input: {
|
|
18741
18741
|
site: string;
|
|
18742
18742
|
dimension: SegmentDimension;
|
|
18743
18743
|
before: {
|
|
@@ -18755,7 +18755,7 @@ declare function compareSegmentRows(input: {
|
|
|
18755
18755
|
maxRows?: number;
|
|
18756
18756
|
generatedAt?: string;
|
|
18757
18757
|
}): SegmentImpactReport;
|
|
18758
|
-
declare function segmentImpact(input: SegmentImpactInput, dependencies?: SegmentImpactDependencies): Promise<SegmentImpactReport>;
|
|
18758
|
+
export declare function segmentImpact(input: SegmentImpactInput, dependencies?: SegmentImpactDependencies): Promise<SegmentImpactReport>;
|
|
18759
18759
|
//#endregion
|
|
18760
18760
|
//#region packages/core/src/providers/domain-contracts.d.ts
|
|
18761
18761
|
type ResearchImportSource = {
|
|
@@ -19045,7 +19045,7 @@ interface CannibalAnalysis {
|
|
|
19045
19045
|
//#endregion
|
|
19046
19046
|
//#region packages/core/src/analyze/site-diagnostics/cannibal-report.d.ts
|
|
19047
19047
|
/** Search Console input. Local research-file imports use the Node binding. */
|
|
19048
|
-
interface CannibalSearchConsoleInput {
|
|
19048
|
+
export interface CannibalSearchConsoleInput {
|
|
19049
19049
|
site: string;
|
|
19050
19050
|
days?: number;
|
|
19051
19051
|
startDate?: string;
|
|
@@ -19056,39 +19056,39 @@ interface CannibalSearchConsoleInput {
|
|
|
19056
19056
|
includeBrand?: boolean;
|
|
19057
19057
|
refresh?: boolean;
|
|
19058
19058
|
}
|
|
19059
|
-
interface CannibalDependencies {
|
|
19059
|
+
export interface CannibalDependencies {
|
|
19060
19060
|
searchAnalytics: SearchAnalyticsQuery;
|
|
19061
19061
|
now: () => Date;
|
|
19062
19062
|
}
|
|
19063
|
-
declare function cannibalReportWith(input: CannibalSearchConsoleInput, dependencies: CannibalDependencies): Promise<CannibalReport>;
|
|
19063
|
+
export declare function cannibalReportWith(input: CannibalSearchConsoleInput, dependencies: CannibalDependencies): Promise<CannibalReport>;
|
|
19064
19064
|
//#endregion
|
|
19065
19065
|
//#region packages/core/src/analyze/site-diagnostics/cannibal-analysis.d.ts
|
|
19066
|
-
declare function analyzeCannibalRows(input: AnalyzeCannibalRowsInput): CannibalAnalysis;
|
|
19067
|
-
declare const CANNIBAL_MINIMUM_PAGE_SHARE = 0.1;
|
|
19068
|
-
declare const CANNIBAL_MAXIMUM_DOMINANT_SHARE = 0.8;
|
|
19066
|
+
export declare function analyzeCannibalRows(input: AnalyzeCannibalRowsInput): CannibalAnalysis;
|
|
19067
|
+
export declare const CANNIBAL_MINIMUM_PAGE_SHARE = 0.1;
|
|
19068
|
+
export declare const CANNIBAL_MAXIMUM_DOMINANT_SHARE = 0.8;
|
|
19069
19069
|
//#endregion
|
|
19070
19070
|
//#region packages/core/src/analyze/site-diagnostics/cannibal-import.d.ts
|
|
19071
|
-
interface CannibalImportReportInput {
|
|
19071
|
+
export interface CannibalImportReportInput {
|
|
19072
19072
|
site: string;
|
|
19073
19073
|
researchFiles: ResearchImportSource[];
|
|
19074
19074
|
limit?: number;
|
|
19075
19075
|
brandTerms?: string[];
|
|
19076
19076
|
includeBrand?: boolean;
|
|
19077
19077
|
}
|
|
19078
|
-
interface CannibalImportDependencies {
|
|
19078
|
+
export interface CannibalImportDependencies {
|
|
19079
19079
|
now?: () => Date;
|
|
19080
19080
|
}
|
|
19081
|
-
declare function analyzeCannibalImportRows(input: AnalyzeCannibalImportRowsInput): CannibalImportAnalysis;
|
|
19082
|
-
declare function cannibalImportReport(input: CannibalImportReportInput, dependencies?: CannibalImportDependencies): Promise<CannibalImportReport>;
|
|
19081
|
+
export declare function analyzeCannibalImportRows(input: AnalyzeCannibalImportRowsInput): CannibalImportAnalysis;
|
|
19082
|
+
export declare function cannibalImportReport(input: CannibalImportReportInput, dependencies?: CannibalImportDependencies): Promise<CannibalImportReport>;
|
|
19083
19083
|
//#endregion
|
|
19084
19084
|
//#region packages/core/src/analyze/site-diagnostics/cannibal.d.ts
|
|
19085
|
-
interface CannibalReportInput extends CannibalSearchConsoleInput {
|
|
19085
|
+
export interface CannibalReportInput extends CannibalSearchConsoleInput {
|
|
19086
19086
|
researchFiles?: ResearchImportSource[];
|
|
19087
19087
|
}
|
|
19088
|
-
declare function cannibalReport(input: CannibalReportInput & {
|
|
19088
|
+
export declare function cannibalReport(input: CannibalReportInput & {
|
|
19089
19089
|
researchFiles: ResearchImportSource[];
|
|
19090
19090
|
}, dependencies?: CannibalDependencies): Promise<CannibalImportReport>;
|
|
19091
|
-
declare function cannibalReport(input: CannibalReportInput & {
|
|
19091
|
+
export declare function cannibalReport(input: CannibalReportInput & {
|
|
19092
19092
|
researchFiles?: undefined;
|
|
19093
19093
|
}, dependencies?: CannibalDependencies): Promise<CannibalReport>;
|
|
19094
19094
|
//#endregion
|
|
@@ -19245,10 +19245,10 @@ interface DecayReport {
|
|
|
19245
19245
|
}
|
|
19246
19246
|
//#endregion
|
|
19247
19247
|
//#region packages/core/src/analyze/site-diagnostics/decay-analysis.d.ts
|
|
19248
|
-
declare function analyzeDecay(input: AnalyzeDecayInput): DecayAnalysis;
|
|
19248
|
+
export declare function analyzeDecay(input: AnalyzeDecayInput): DecayAnalysis;
|
|
19249
19249
|
//#endregion
|
|
19250
19250
|
//#region packages/core/src/analyze/site-diagnostics/decay-report-input.d.ts
|
|
19251
|
-
declare function decayComparisonRange(current: {
|
|
19251
|
+
export declare function decayComparisonRange(current: {
|
|
19252
19252
|
startDate: string;
|
|
19253
19253
|
endDate: string;
|
|
19254
19254
|
}, comparison?: DecayComparison): {
|
|
@@ -19257,7 +19257,7 @@ declare function decayComparisonRange(current: {
|
|
|
19257
19257
|
};
|
|
19258
19258
|
//#endregion
|
|
19259
19259
|
//#region packages/core/src/analyze/site-diagnostics/decaying-report.d.ts
|
|
19260
|
-
interface DecayingReportInput {
|
|
19260
|
+
export interface DecayingReportInput {
|
|
19261
19261
|
site: string;
|
|
19262
19262
|
days?: number;
|
|
19263
19263
|
startDate?: string;
|
|
@@ -19271,14 +19271,14 @@ interface DecayingReportInput {
|
|
|
19271
19271
|
includeBrand?: boolean;
|
|
19272
19272
|
refresh?: boolean;
|
|
19273
19273
|
}
|
|
19274
|
-
interface DecayingDependencies {
|
|
19274
|
+
export interface DecayingDependencies {
|
|
19275
19275
|
searchAnalytics: SearchAnalyticsQuery;
|
|
19276
19276
|
now: () => Date;
|
|
19277
19277
|
}
|
|
19278
|
-
declare function decayingReportWith(input: DecayingReportInput, dependencies: DecayingDependencies): Promise<DecayReport>;
|
|
19278
|
+
export declare function decayingReportWith(input: DecayingReportInput, dependencies: DecayingDependencies): Promise<DecayReport>;
|
|
19279
19279
|
//#endregion
|
|
19280
19280
|
//#region packages/core/src/analyze/site-diagnostics/decaying.d.ts
|
|
19281
|
-
declare function decayingReport(input: DecayingReportInput, dependencies?: DecayingDependencies): Promise<DecayReport>;
|
|
19281
|
+
export declare function decayingReport(input: DecayingReportInput, dependencies?: DecayingDependencies): Promise<DecayReport>;
|
|
19282
19282
|
//#endregion
|
|
19283
19283
|
//#region packages/core/src/analyze/site-ctr-curve.d.ts
|
|
19284
19284
|
declare const SITE_CTR_CURVE_METHOD: {
|
|
@@ -19441,7 +19441,7 @@ type AnalyzeQuickWinsInput = {
|
|
|
19441
19441
|
};
|
|
19442
19442
|
//#endregion
|
|
19443
19443
|
//#region packages/core/src/analyze/site-diagnostics/quick-wins-report.d.ts
|
|
19444
|
-
type QuickWinsInput = {
|
|
19444
|
+
export type QuickWinsInput = {
|
|
19445
19445
|
site: string;
|
|
19446
19446
|
days?: number;
|
|
19447
19447
|
startDate?: string;
|
|
@@ -19456,7 +19456,7 @@ type QuickWinsInput = {
|
|
|
19456
19456
|
rate?: FetchRateControls;
|
|
19457
19457
|
refresh?: boolean;
|
|
19458
19458
|
};
|
|
19459
|
-
type QuickWinsDependencies = {
|
|
19459
|
+
export type QuickWinsDependencies = {
|
|
19460
19460
|
searchAnalytics: SearchAnalyticsQuery;
|
|
19461
19461
|
/** Required only when page verification is requested. */
|
|
19462
19462
|
fetch?: PageFetcher;
|
|
@@ -19464,8 +19464,8 @@ type QuickWinsDependencies = {
|
|
|
19464
19464
|
extract?: PageExtractor;
|
|
19465
19465
|
now: () => Date;
|
|
19466
19466
|
};
|
|
19467
|
-
type QuickWinsReport = Awaited<ReturnType<typeof quickWinsReportWith>>;
|
|
19468
|
-
declare function quickWinsReportWith(input: QuickWinsInput, dependencies: QuickWinsDependencies): Promise<{
|
|
19467
|
+
export type QuickWinsReport = Awaited<ReturnType<typeof quickWinsReportWith>>;
|
|
19468
|
+
export declare function quickWinsReportWith(input: QuickWinsInput, dependencies: QuickWinsDependencies): Promise<{
|
|
19469
19469
|
site: string;
|
|
19470
19470
|
generatedAt: string;
|
|
19471
19471
|
range: {
|
|
@@ -19578,13 +19578,13 @@ declare function quickWinsReportWith(input: QuickWinsInput, dependencies: QuickW
|
|
|
19578
19578
|
}>;
|
|
19579
19579
|
//#endregion
|
|
19580
19580
|
//#region packages/core/src/analyze/site-diagnostics/quick-wins-analysis.d.ts
|
|
19581
|
-
declare function analyzeQuickWinsFromRows(input: AnalyzeQuickWinsInput): QuickWinAnalysis;
|
|
19581
|
+
export declare function analyzeQuickWinsFromRows(input: AnalyzeQuickWinsInput): QuickWinAnalysis;
|
|
19582
19582
|
//#endregion
|
|
19583
19583
|
//#region packages/core/src/analyze/site-diagnostics/quick-wins.d.ts
|
|
19584
|
-
declare function quickWinsReport(input: QuickWinsInput, dependencies?: QuickWinsDependencies): Promise<QuickWinsReport>;
|
|
19584
|
+
export declare function quickWinsReport(input: QuickWinsInput, dependencies?: QuickWinsDependencies): Promise<QuickWinsReport>;
|
|
19585
19585
|
//#endregion
|
|
19586
19586
|
//#region packages/core/src/analyze/site-diagnostics/types.d.ts
|
|
19587
|
-
interface TemplateAwareReport {
|
|
19587
|
+
export interface TemplateAwareReport {
|
|
19588
19588
|
templates: TemplateSummary[];
|
|
19589
19589
|
}
|
|
19590
19590
|
//#endregion
|
|
@@ -19705,10 +19705,10 @@ type AnalyzeStrikingDistanceInput = {
|
|
|
19705
19705
|
};
|
|
19706
19706
|
//#endregion
|
|
19707
19707
|
//#region packages/core/src/analyze/striking-distance-analysis.d.ts
|
|
19708
|
-
declare function analyzeStrikingDistanceRows(input: AnalyzeStrikingDistanceInput): StrikingDistanceAnalysis;
|
|
19708
|
+
export declare function analyzeStrikingDistanceRows(input: AnalyzeStrikingDistanceInput): StrikingDistanceAnalysis;
|
|
19709
19709
|
//#endregion
|
|
19710
19710
|
//#region packages/core/src/analyze/striking-distance-report.d.ts
|
|
19711
|
-
type StrikingDistanceInput = {
|
|
19711
|
+
export type StrikingDistanceInput = {
|
|
19712
19712
|
site: string;
|
|
19713
19713
|
/** Window length in days; ignored when startDate and endDate are given. */
|
|
19714
19714
|
days?: number;
|
|
@@ -19726,10 +19726,10 @@ type StrikingDistanceInput = {
|
|
|
19726
19726
|
rate?: FetchRateControls;
|
|
19727
19727
|
refresh?: boolean;
|
|
19728
19728
|
};
|
|
19729
|
-
type StrikingDistanceItem = StrikingDistanceAnalysisItem & {
|
|
19729
|
+
export type StrikingDistanceItem = StrikingDistanceAnalysisItem & {
|
|
19730
19730
|
contentVerification?: QueryContentCoverage;
|
|
19731
19731
|
};
|
|
19732
|
-
type StrikingDistanceReport = {
|
|
19732
|
+
export type StrikingDistanceReport = {
|
|
19733
19733
|
site: string;
|
|
19734
19734
|
generatedAt: string;
|
|
19735
19735
|
range: {
|
|
@@ -19777,16 +19777,16 @@ type StrikingDistanceReport = {
|
|
|
19777
19777
|
caveats: string[];
|
|
19778
19778
|
recommendations: string[];
|
|
19779
19779
|
};
|
|
19780
|
-
type StrikingDistanceDependencies = {
|
|
19780
|
+
export type StrikingDistanceDependencies = {
|
|
19781
19781
|
searchAnalytics: SearchAnalyticsQuery;
|
|
19782
19782
|
/** Required only when page verification is requested. */
|
|
19783
19783
|
verifyContent?: QueryContentVerifier;
|
|
19784
19784
|
now: () => Date;
|
|
19785
19785
|
};
|
|
19786
|
-
declare function strikingDistanceWith(input: StrikingDistanceInput, dependencies: StrikingDistanceDependencies): Promise<StrikingDistanceReport>;
|
|
19786
|
+
export declare function strikingDistanceWith(input: StrikingDistanceInput, dependencies: StrikingDistanceDependencies): Promise<StrikingDistanceReport>;
|
|
19787
19787
|
//#endregion
|
|
19788
19788
|
//#region packages/core/src/analyze/striking-distance.d.ts
|
|
19789
|
-
declare function strikingDistance(input: StrikingDistanceInput, dependencies?: StrikingDistanceDependencies): Promise<StrikingDistanceReport>;
|
|
19789
|
+
export declare function strikingDistance(input: StrikingDistanceInput, dependencies?: StrikingDistanceDependencies): Promise<StrikingDistanceReport>;
|
|
19790
19790
|
//#endregion
|
|
19791
19791
|
//#region packages/core/src/updates/search-updates.d.ts
|
|
19792
19792
|
interface SearchStatusIncident {
|
|
@@ -19809,12 +19809,12 @@ interface SearchUpdate {
|
|
|
19809
19809
|
status: 'complete' | 'rolling-out' | 'incident';
|
|
19810
19810
|
sourceUrl: string;
|
|
19811
19811
|
}
|
|
19812
|
-
declare function searchUpdatesFromIncidents(incidents: SearchStatusIncident[], input?: {
|
|
19812
|
+
export declare function searchUpdatesFromIncidents(incidents: SearchStatusIncident[], input?: {
|
|
19813
19813
|
product?: string;
|
|
19814
19814
|
limit?: number;
|
|
19815
19815
|
}): SearchUpdate[];
|
|
19816
|
-
declare function withRankingHistory(live: SearchStatusIncident[]): SearchStatusIncident[];
|
|
19817
|
-
declare function findOverlappingSearchUpdates(input: {
|
|
19816
|
+
export declare function withRankingHistory(live: SearchStatusIncident[]): SearchStatusIncident[];
|
|
19817
|
+
export declare function findOverlappingSearchUpdates(input: {
|
|
19818
19818
|
updates: SearchUpdate[];
|
|
19819
19819
|
startDate: string;
|
|
19820
19820
|
endDate: string;
|
|
@@ -19822,7 +19822,7 @@ declare function findOverlappingSearchUpdates(input: {
|
|
|
19822
19822
|
}): SearchUpdate[];
|
|
19823
19823
|
//#endregion
|
|
19824
19824
|
//#region packages/core/src/analyze/traffic-anomaly-analysis.d.ts
|
|
19825
|
-
interface TrafficAnomaly {
|
|
19825
|
+
export interface TrafficAnomaly {
|
|
19826
19826
|
site: string;
|
|
19827
19827
|
metric: 'clicks' | 'impressions';
|
|
19828
19828
|
baselineStart: string;
|
|
@@ -19850,7 +19850,7 @@ interface TrafficAnomaly {
|
|
|
19850
19850
|
changeDate?: string | null;
|
|
19851
19851
|
}
|
|
19852
19852
|
/** The step-change heuristic and its thresholds, returned with the report. */
|
|
19853
|
-
declare const STEP_CHANGE_RULES: {
|
|
19853
|
+
export declare const STEP_CHANGE_RULES: {
|
|
19854
19854
|
readonly method: "best-split";
|
|
19855
19855
|
readonly description: "Heuristic. The change date is the split of the daily series where the mean before and the mean after differ most, weighted by segment length. It counts as a step change only when it is sudden and sustained. Sudden: the median of up to localDays observed days after the date differs from the median of up to localDays days before it by at least minLocalShiftInStdDevs pooled within-segment standard deviations, so one unusual day is not a step and a slow trend is not a step. Sustained: the mean of every day from the date differs from the mean before it by a z-score of at least minZScore, stricter than the recent-window test because the date is chosen from the data. These tests use daily values capped at the capDays and 1 - capDays quantiles, so one spike day cannot hide a lasting step. Otherwise the last recentDays are compared with the days before them.";
|
|
19856
19856
|
readonly minDaysBefore: 7;
|
|
@@ -19860,18 +19860,18 @@ declare const STEP_CHANGE_RULES: {
|
|
|
19860
19860
|
readonly minZScore: 3;
|
|
19861
19861
|
readonly capDays: 0.05;
|
|
19862
19862
|
};
|
|
19863
|
-
type TrafficAnomalyDetection = typeof STEP_CHANGE_RULES & {
|
|
19863
|
+
export type TrafficAnomalyDetection = typeof STEP_CHANGE_RULES & {
|
|
19864
19864
|
recentDays: number;
|
|
19865
19865
|
};
|
|
19866
19866
|
/**
|
|
19867
19867
|
* The dates to check against Google updates (before padding): the change
|
|
19868
19868
|
* date of the first significant step change, else the comparison window.
|
|
19869
19869
|
*/
|
|
19870
|
-
declare function changeWindow(anomalies: TrafficAnomaly[]): {
|
|
19870
|
+
export declare function changeWindow(anomalies: TrafficAnomaly[]): {
|
|
19871
19871
|
start: string;
|
|
19872
19872
|
end: string;
|
|
19873
19873
|
} | undefined;
|
|
19874
|
-
interface TrafficAnomalyCoverage {
|
|
19874
|
+
export interface TrafficAnomalyCoverage {
|
|
19875
19875
|
status: 'complete' | 'partial';
|
|
19876
19876
|
requestedStart: string;
|
|
19877
19877
|
requestedEnd: string;
|
|
@@ -19901,7 +19901,7 @@ interface TrafficAnomalyCoverage {
|
|
|
19901
19901
|
};
|
|
19902
19902
|
caveats: string[];
|
|
19903
19903
|
}
|
|
19904
|
-
type TrafficAnomalySelection = {
|
|
19904
|
+
export type TrafficAnomalySelection = {
|
|
19905
19905
|
sourceRows: number;
|
|
19906
19906
|
invalidRows: number;
|
|
19907
19907
|
duplicateRows: number;
|
|
@@ -19911,7 +19911,7 @@ type TrafficAnomalySelection = {
|
|
|
19911
19911
|
baselineDays: number;
|
|
19912
19912
|
comparisonDays: number;
|
|
19913
19913
|
};
|
|
19914
|
-
interface TrafficAnomalyReport {
|
|
19914
|
+
export interface TrafficAnomalyReport {
|
|
19915
19915
|
site: string;
|
|
19916
19916
|
generatedAt: string;
|
|
19917
19917
|
/** The Search Console window used. Optional only for older fixtures. */
|
|
@@ -19927,7 +19927,7 @@ interface TrafficAnomalyReport {
|
|
|
19927
19927
|
/** Detection method and thresholds. Optional only for older fixtures. */
|
|
19928
19928
|
detection?: TrafficAnomalyDetection;
|
|
19929
19929
|
}
|
|
19930
|
-
interface UpdateCorrelationReport {
|
|
19930
|
+
export interface UpdateCorrelationReport {
|
|
19931
19931
|
site: string;
|
|
19932
19932
|
generatedAt: string;
|
|
19933
19933
|
anomalies: TrafficAnomaly[];
|
|
@@ -19946,11 +19946,11 @@ interface UpdateCorrelationReport {
|
|
|
19946
19946
|
product: string;
|
|
19947
19947
|
};
|
|
19948
19948
|
}
|
|
19949
|
-
type UpdateConfounder = {
|
|
19949
|
+
export type UpdateConfounder = {
|
|
19950
19950
|
source: 'manual';
|
|
19951
19951
|
title: string;
|
|
19952
19952
|
};
|
|
19953
|
-
declare function interpretUpdateCorrelation(input: {
|
|
19953
|
+
export declare function interpretUpdateCorrelation(input: {
|
|
19954
19954
|
site: string;
|
|
19955
19955
|
anomalies: TrafficAnomaly[];
|
|
19956
19956
|
overlappingUpdates: SearchUpdate[];
|
|
@@ -19960,7 +19960,7 @@ declare function interpretUpdateCorrelation(input: {
|
|
|
19960
19960
|
paddingDays: number;
|
|
19961
19961
|
refresh?: boolean;
|
|
19962
19962
|
}): Pick<UpdateCorrelationReport, 'classification' | 'attribution' | 'confidence' | 'confounders' | 'summary' | 'evidence' | 'caveats' | 'actions' | 'source'>;
|
|
19963
|
-
declare function analyzeTrafficAnomalyRows(input: {
|
|
19963
|
+
export declare function analyzeTrafficAnomalyRows(input: {
|
|
19964
19964
|
site: string;
|
|
19965
19965
|
rows: GscRow[];
|
|
19966
19966
|
startDate: string;
|
|
@@ -19973,7 +19973,7 @@ declare function analyzeTrafficAnomalyRows(input: {
|
|
|
19973
19973
|
};
|
|
19974
19974
|
//#endregion
|
|
19975
19975
|
//#region packages/core/src/analyze/traffic-anomaly-report.d.ts
|
|
19976
|
-
type TrafficAnomalyInput = {
|
|
19976
|
+
export type TrafficAnomalyInput = {
|
|
19977
19977
|
site: string;
|
|
19978
19978
|
days?: number;
|
|
19979
19979
|
recentDays?: number;
|
|
@@ -19981,15 +19981,15 @@ type TrafficAnomalyInput = {
|
|
|
19981
19981
|
endDate?: string;
|
|
19982
19982
|
refresh?: boolean;
|
|
19983
19983
|
};
|
|
19984
|
-
type TrafficAnomalyDependencies = {
|
|
19984
|
+
export type TrafficAnomalyDependencies = {
|
|
19985
19985
|
searchAnalytics: SearchAnalyticsQuery;
|
|
19986
19986
|
now: () => Date;
|
|
19987
19987
|
};
|
|
19988
|
-
declare function trafficAnomalyWith(input: TrafficAnomalyInput, dependencies: TrafficAnomalyDependencies): Promise<TrafficAnomalyReport>;
|
|
19988
|
+
export declare function trafficAnomalyWith(input: TrafficAnomalyInput, dependencies: TrafficAnomalyDependencies): Promise<TrafficAnomalyReport>;
|
|
19989
19989
|
//#endregion
|
|
19990
19990
|
//#region packages/core/src/analyze/traffic-anomaly.d.ts
|
|
19991
|
-
declare function trafficAnomaly(input: TrafficAnomalyInput, dependencies?: TrafficAnomalyDependencies): Promise<TrafficAnomalyReport>;
|
|
19992
|
-
declare function updateCorrelation(input: {
|
|
19991
|
+
export declare function trafficAnomaly(input: TrafficAnomalyInput, dependencies?: TrafficAnomalyDependencies): Promise<TrafficAnomalyReport>;
|
|
19992
|
+
export declare function updateCorrelation(input: {
|
|
19993
19993
|
site: string;
|
|
19994
19994
|
days?: number;
|
|
19995
19995
|
recentDays?: number;
|
|
@@ -20002,22 +20002,22 @@ declare function updateCorrelation(input: {
|
|
|
20002
20002
|
}): Promise<UpdateCorrelationReport>;
|
|
20003
20003
|
//#endregion
|
|
20004
20004
|
//#region packages/core/src/analyze/diagnose-property.d.ts
|
|
20005
|
-
type DiagnosisPriority = {
|
|
20005
|
+
export type DiagnosisPriority = {
|
|
20006
20006
|
label: string;
|
|
20007
20007
|
reason: string;
|
|
20008
20008
|
action: string;
|
|
20009
20009
|
confidence: 'high' | 'medium' | 'low';
|
|
20010
20010
|
};
|
|
20011
|
-
type SkippedDiagnosisSection = {
|
|
20011
|
+
export type SkippedDiagnosisSection = {
|
|
20012
20012
|
section: string;
|
|
20013
20013
|
reason: string;
|
|
20014
20014
|
};
|
|
20015
|
-
type DiagnosisDataStatus = 'complete' | 'partial' | 'unavailable';
|
|
20016
|
-
type PartialDiagnosisReason = {
|
|
20015
|
+
export type DiagnosisDataStatus = 'complete' | 'partial' | 'unavailable';
|
|
20016
|
+
export type PartialDiagnosisReason = {
|
|
20017
20017
|
section: string;
|
|
20018
20018
|
reason: string;
|
|
20019
20019
|
};
|
|
20020
|
-
type DiagnosePropertyReport = {
|
|
20020
|
+
export type DiagnosePropertyReport = {
|
|
20021
20021
|
site: string;
|
|
20022
20022
|
generatedAt: string;
|
|
20023
20023
|
dataStatus: DiagnosisDataStatus;
|
|
@@ -20050,7 +20050,7 @@ type DiagnosePropertyReport = {
|
|
|
20050
20050
|
strikingDistance: Awaited<ReturnType<typeof strikingDistance>>;
|
|
20051
20051
|
quickWins: Awaited<ReturnType<typeof quickWinsReport>>;
|
|
20052
20052
|
};
|
|
20053
|
-
type DiagnosePropertyDependencies = {
|
|
20053
|
+
export type DiagnosePropertyDependencies = {
|
|
20054
20054
|
trafficAnomaly: typeof trafficAnomaly;
|
|
20055
20055
|
updateCorrelation: typeof updateCorrelation;
|
|
20056
20056
|
segmentImpact: typeof segmentImpact;
|
|
@@ -20059,7 +20059,7 @@ type DiagnosePropertyDependencies = {
|
|
|
20059
20059
|
strikingDistance: typeof strikingDistance;
|
|
20060
20060
|
quickWinsReport: typeof quickWinsReport;
|
|
20061
20061
|
};
|
|
20062
|
-
declare function diagnoseProperty(input: {
|
|
20062
|
+
export declare function diagnoseProperty(input: {
|
|
20063
20063
|
site: string;
|
|
20064
20064
|
days?: number;
|
|
20065
20065
|
recentDays?: number;
|
|
@@ -20078,7 +20078,7 @@ declare function diagnoseProperty(input: {
|
|
|
20078
20078
|
}, dependencies?: Partial<DiagnosePropertyDependencies>): Promise<DiagnosePropertyReport>;
|
|
20079
20079
|
//#endregion
|
|
20080
20080
|
//#region packages/core/src/decision-model.d.ts
|
|
20081
|
-
type DecisionQuestion = {
|
|
20081
|
+
export type DecisionQuestion = {
|
|
20082
20082
|
type: 'noul';
|
|
20083
20083
|
instructions: unknown;
|
|
20084
20084
|
criteria?: {
|
|
@@ -20090,7 +20090,7 @@ type DecisionQuestion = {
|
|
|
20090
20090
|
instructions: unknown;
|
|
20091
20091
|
criteria: Record<string, unknown>;
|
|
20092
20092
|
};
|
|
20093
|
-
type DecisionAnswer = {
|
|
20093
|
+
export type DecisionAnswer = {
|
|
20094
20094
|
type: 'noul';
|
|
20095
20095
|
noul: number;
|
|
20096
20096
|
} | {
|
|
@@ -20099,34 +20099,34 @@ type DecisionAnswer = {
|
|
|
20099
20099
|
confidence: number;
|
|
20100
20100
|
probabilities: Record<string, number>;
|
|
20101
20101
|
};
|
|
20102
|
-
interface DecisionRequest {
|
|
20102
|
+
export interface DecisionRequest {
|
|
20103
20103
|
state: unknown;
|
|
20104
20104
|
questions: Record<string, DecisionQuestion>;
|
|
20105
20105
|
}
|
|
20106
|
-
interface DecisionResponse {
|
|
20106
|
+
export interface DecisionResponse {
|
|
20107
20107
|
model: string;
|
|
20108
20108
|
answers: Record<string, DecisionAnswer>;
|
|
20109
20109
|
inputTokens: number;
|
|
20110
20110
|
}
|
|
20111
|
-
interface DecisionModel {
|
|
20111
|
+
export interface DecisionModel {
|
|
20112
20112
|
provider: string;
|
|
20113
20113
|
name: string;
|
|
20114
20114
|
pricePerMillionInputTokens: number;
|
|
20115
20115
|
ask(request: DecisionRequest, signal?: AbortSignal): Promise<DecisionResponse>;
|
|
20116
20116
|
}
|
|
20117
|
-
type DecisionErrorKind = 'auth' | 'rate-limit' | 'invalid' | 'unavailable';
|
|
20118
|
-
declare class DecisionModelError extends Error {
|
|
20117
|
+
export type DecisionErrorKind = 'auth' | 'rate-limit' | 'invalid' | 'unavailable';
|
|
20118
|
+
export declare class DecisionModelError extends Error {
|
|
20119
20119
|
readonly kind: DecisionErrorKind;
|
|
20120
20120
|
readonly retryAfterMs?: number | undefined;
|
|
20121
20121
|
constructor(kind: DecisionErrorKind, message: string, retryAfterMs?: number | undefined);
|
|
20122
20122
|
get retryable(): boolean;
|
|
20123
20123
|
}
|
|
20124
|
-
declare function typesafeDecisionModel(input: {
|
|
20124
|
+
export declare function typesafeDecisionModel(input: {
|
|
20125
20125
|
apiKey: string;
|
|
20126
20126
|
model?: string;
|
|
20127
20127
|
fetch?: typeof fetch;
|
|
20128
20128
|
}): DecisionModel;
|
|
20129
|
-
interface DecisionUsage {
|
|
20129
|
+
export interface DecisionUsage {
|
|
20130
20130
|
provider: string;
|
|
20131
20131
|
model: string;
|
|
20132
20132
|
requests: number;
|
|
@@ -20134,7 +20134,7 @@ interface DecisionUsage {
|
|
|
20134
20134
|
inputTokens: number;
|
|
20135
20135
|
costUsd: number;
|
|
20136
20136
|
}
|
|
20137
|
-
declare class DecisionRunner {
|
|
20137
|
+
export declare class DecisionRunner {
|
|
20138
20138
|
readonly model: DecisionModel;
|
|
20139
20139
|
private limit;
|
|
20140
20140
|
private active;
|
|
@@ -20183,8 +20183,8 @@ declare class SiteIndex implements TermWeights {
|
|
|
20183
20183
|
}
|
|
20184
20184
|
//#endregion
|
|
20185
20185
|
//#region packages/core/src/analyze/internal-links-crawl.d.ts
|
|
20186
|
-
declare const DEFAULT_MAX_PAGES = 500;
|
|
20187
|
-
declare const MAX_MAX_PAGES = 5000;
|
|
20186
|
+
export declare const DEFAULT_MAX_PAGES = 500;
|
|
20187
|
+
export declare const MAX_MAX_PAGES = 5000;
|
|
20188
20188
|
type CrawlSkipReason$1 = 'robots' | 'not-html' | 'http-error' | 'fetch-failed' | 'canonicalised' | 'duplicate' | 'off-site';
|
|
20189
20189
|
interface CrawledPage {
|
|
20190
20190
|
url: string;
|
|
@@ -20255,7 +20255,7 @@ interface CrawlInput {
|
|
|
20255
20255
|
declare function crawlForLinks(input: CrawlInput): Promise<SiteCrawl>;
|
|
20256
20256
|
//#endregion
|
|
20257
20257
|
//#region packages/core/src/analyze/internal-links-judge.d.ts
|
|
20258
|
-
declare const PAGE_TYPES: {
|
|
20258
|
+
export declare const PAGE_TYPES: {
|
|
20259
20259
|
readonly pillar_guide: "A long, broad guide that covers a whole topic and would naturally link out to many narrower pages";
|
|
20260
20260
|
readonly support_article: "A focused article, post, tutorial, or explainer about one narrower subject";
|
|
20261
20261
|
readonly product_or_service: "Sells or describes a product, service, plan, pricing, demo, or signup: a page that makes money";
|
|
@@ -20270,14 +20270,14 @@ declare const PAGE_TYPES: {
|
|
|
20270
20270
|
readonly other: null;
|
|
20271
20271
|
};
|
|
20272
20272
|
type PageType = keyof typeof PAGE_TYPES;
|
|
20273
|
-
declare const SEARCH_INTENTS: {
|
|
20273
|
+
export declare const SEARCH_INTENTS: {
|
|
20274
20274
|
readonly informational: "The reader wants to learn or understand something";
|
|
20275
20275
|
readonly commercial: "The reader is comparing or evaluating options before buying";
|
|
20276
20276
|
readonly transactional: "The reader wants to buy, sign up, download, or complete an action now";
|
|
20277
20277
|
readonly navigational: "The reader wants to reach a specific page or part of the site";
|
|
20278
20278
|
};
|
|
20279
20279
|
type SearchIntent = keyof typeof SEARCH_INTENTS;
|
|
20280
|
-
declare const LINK_ROLES: {
|
|
20280
|
+
export declare const LINK_ROLES: {
|
|
20281
20281
|
readonly explains_concept: "The target explains a term or idea the source mentions";
|
|
20282
20282
|
readonly deeper_detail: "The target goes deeper into a sub-topic the source only touches on";
|
|
20283
20283
|
readonly broader_guide: "The target is the broader guide or hub the source belongs under";
|
|
@@ -20421,7 +20421,7 @@ interface InternalLinksReport {
|
|
|
20421
20421
|
}
|
|
20422
20422
|
//#endregion
|
|
20423
20423
|
//#region packages/core/src/analyze/internal-links.d.ts
|
|
20424
|
-
interface InternalLinksInput {
|
|
20424
|
+
export interface InternalLinksInput {
|
|
20425
20425
|
site: string;
|
|
20426
20426
|
targetUrl?: string;
|
|
20427
20427
|
maxPages?: number;
|
|
@@ -20429,7 +20429,7 @@ interface InternalLinksInput {
|
|
|
20429
20429
|
endDate?: string;
|
|
20430
20430
|
refresh?: boolean;
|
|
20431
20431
|
}
|
|
20432
|
-
interface InternalLinksDependencies {
|
|
20432
|
+
export interface InternalLinksDependencies {
|
|
20433
20433
|
crawl: typeof crawlForLinks;
|
|
20434
20434
|
searchConsole: {
|
|
20435
20435
|
property: string;
|
|
@@ -20449,8 +20449,8 @@ interface InternalLinksDependencies {
|
|
|
20449
20449
|
now: () => Date;
|
|
20450
20450
|
progress?: ProgressReporter;
|
|
20451
20451
|
}
|
|
20452
|
-
declare function siteStartUrl(site: string): string;
|
|
20453
|
-
declare function internalLinksReport(input: InternalLinksInput, dependencies: Partial<InternalLinksDependencies> & Pick<InternalLinksDependencies, 'searchConsole' | 'decisionModel'>): Promise<InternalLinksReport>;
|
|
20452
|
+
export declare function siteStartUrl(site: string): string;
|
|
20453
|
+
export declare function internalLinksReport(input: InternalLinksInput, dependencies: Partial<InternalLinksDependencies> & Pick<InternalLinksDependencies, 'searchConsole' | 'decisionModel'>): Promise<InternalLinksReport>;
|
|
20454
20454
|
//#endregion
|
|
20455
20455
|
//#region packages/core/src/analyze/url-templates.d.ts
|
|
20456
20456
|
type PseoTemplateCluster = {
|
|
@@ -20477,8 +20477,8 @@ type PseoTemplateShape = {
|
|
|
20477
20477
|
};
|
|
20478
20478
|
//#endregion
|
|
20479
20479
|
//#region packages/core/src/analyze/monitoring/index-coverage.d.ts
|
|
20480
|
-
type IndexCoverageSourceCompleteness = 'complete' | 'partial' | 'truncated' | 'unknown' | 'unavailable';
|
|
20481
|
-
type IndexCoverageSourceEvidence = {
|
|
20480
|
+
export type IndexCoverageSourceCompleteness = 'complete' | 'partial' | 'truncated' | 'unknown' | 'unavailable';
|
|
20481
|
+
export type IndexCoverageSourceEvidence = {
|
|
20482
20482
|
completeness: IndexCoverageSourceCompleteness;
|
|
20483
20483
|
rowsReceived: number;
|
|
20484
20484
|
validUrls: number;
|
|
@@ -20488,7 +20488,7 @@ type IndexCoverageSourceEvidence = {
|
|
|
20488
20488
|
rowLimit?: number;
|
|
20489
20489
|
rowLimitReached?: boolean;
|
|
20490
20490
|
};
|
|
20491
|
-
type IndexCoverageCrawlInput = {
|
|
20491
|
+
export type IndexCoverageCrawlInput = {
|
|
20492
20492
|
report: CrawlReport;
|
|
20493
20493
|
} | {
|
|
20494
20494
|
pages: CrawlPageSnapshot[];
|
|
@@ -20496,13 +20496,13 @@ type IndexCoverageCrawlInput = {
|
|
|
20496
20496
|
rowLimit?: number;
|
|
20497
20497
|
rowLimitReached?: boolean;
|
|
20498
20498
|
};
|
|
20499
|
-
type IndexCoverageSitemapInput = {
|
|
20499
|
+
export type IndexCoverageSitemapInput = {
|
|
20500
20500
|
urls: string[];
|
|
20501
20501
|
completeness: Exclude<IndexCoverageSourceCompleteness, 'unavailable'>;
|
|
20502
20502
|
rowLimit?: number;
|
|
20503
20503
|
rowLimitReached?: boolean;
|
|
20504
20504
|
};
|
|
20505
|
-
type IndexCoverageSearchConsoleInput = {
|
|
20505
|
+
export type IndexCoverageSearchConsoleInput = {
|
|
20506
20506
|
rows: GscRow[];
|
|
20507
20507
|
startDate: string;
|
|
20508
20508
|
endDate: string;
|
|
@@ -20510,7 +20510,7 @@ type IndexCoverageSearchConsoleInput = {
|
|
|
20510
20510
|
completeness: Exclude<IndexCoverageSourceCompleteness, 'unavailable'>;
|
|
20511
20511
|
pageKeyIndex?: number;
|
|
20512
20512
|
};
|
|
20513
|
-
type IndexCoverageInput = {
|
|
20513
|
+
export type IndexCoverageInput = {
|
|
20514
20514
|
generatedAt: string;
|
|
20515
20515
|
crawl: IndexCoverageCrawlInput;
|
|
20516
20516
|
sitemap?: IndexCoverageSitemapInput;
|
|
@@ -20525,12 +20525,12 @@ type IndexCoverageInput = {
|
|
|
20525
20525
|
minShare?: number;
|
|
20526
20526
|
};
|
|
20527
20527
|
};
|
|
20528
|
-
type IndexCoverageSourceMembership = {
|
|
20528
|
+
export type IndexCoverageSourceMembership = {
|
|
20529
20529
|
crawl: boolean;
|
|
20530
20530
|
sitemap: boolean;
|
|
20531
20531
|
searchConsole: boolean;
|
|
20532
20532
|
};
|
|
20533
|
-
type IndexCoverageSearchVisibilityItem = {
|
|
20533
|
+
export type IndexCoverageSearchVisibilityItem = {
|
|
20534
20534
|
url: string;
|
|
20535
20535
|
clicks: number;
|
|
20536
20536
|
impressions: number;
|
|
@@ -20540,14 +20540,14 @@ type IndexCoverageSearchVisibilityItem = {
|
|
|
20540
20540
|
sources: IndexCoverageSourceMembership;
|
|
20541
20541
|
crawlIndexable?: boolean;
|
|
20542
20542
|
};
|
|
20543
|
-
type IndexCoverageCandidateItem = {
|
|
20543
|
+
export type IndexCoverageCandidateItem = {
|
|
20544
20544
|
url: string;
|
|
20545
20545
|
status: number;
|
|
20546
20546
|
declaredIndexability?: CrawlPageSnapshot['declaredIndexability'];
|
|
20547
20547
|
inSitemap: boolean;
|
|
20548
20548
|
};
|
|
20549
|
-
type IndexCoverageControlReason = 'canonical-conflict' | 'canonical-hint-other' | 'crawl-fetch-error' | 'crawler-marked-non-indexable' | 'http-status' | 'noindex' | 'not-html' | 'robots-blocked' | 'unknown';
|
|
20550
|
-
type IndexCoverageControlledItem = {
|
|
20549
|
+
export type IndexCoverageControlReason = 'canonical-conflict' | 'canonical-hint-other' | 'crawl-fetch-error' | 'crawler-marked-non-indexable' | 'http-status' | 'noindex' | 'not-html' | 'robots-blocked' | 'unknown';
|
|
20550
|
+
export type IndexCoverageControlledItem = {
|
|
20551
20551
|
url: string;
|
|
20552
20552
|
status: number;
|
|
20553
20553
|
declaredIndexability?: CrawlPageSnapshot['declaredIndexability'];
|
|
@@ -20555,17 +20555,17 @@ type IndexCoverageControlledItem = {
|
|
|
20555
20555
|
inSitemap: boolean;
|
|
20556
20556
|
hasRetainedSearchVisibility: boolean;
|
|
20557
20557
|
};
|
|
20558
|
-
type IndexCoverageInventoryItem = {
|
|
20558
|
+
export type IndexCoverageInventoryItem = {
|
|
20559
20559
|
url: string;
|
|
20560
20560
|
sources: IndexCoverageSourceMembership;
|
|
20561
20561
|
};
|
|
20562
|
-
type IndexCoverageBoundedSection<T> = {
|
|
20562
|
+
export type IndexCoverageBoundedSection<T> = {
|
|
20563
20563
|
count: number;
|
|
20564
20564
|
returned: number;
|
|
20565
20565
|
omitted: number;
|
|
20566
20566
|
items: T[];
|
|
20567
20567
|
};
|
|
20568
|
-
type IndexCoverageTemplateReview = {
|
|
20568
|
+
export type IndexCoverageTemplateReview = {
|
|
20569
20569
|
scope: 'crawlable-without-retained-search-visibility';
|
|
20570
20570
|
eligibleUrlCount: number;
|
|
20571
20571
|
count: number;
|
|
@@ -20577,7 +20577,7 @@ type IndexCoverageTemplateReview = {
|
|
|
20577
20577
|
};
|
|
20578
20578
|
clusters: PseoTemplateCluster[];
|
|
20579
20579
|
};
|
|
20580
|
-
type IndexCoverageSignalsReport = {
|
|
20580
|
+
export type IndexCoverageSignalsReport = {
|
|
20581
20581
|
schemaVersion: 1;
|
|
20582
20582
|
generatedAt: string;
|
|
20583
20583
|
limits: {
|
|
@@ -20618,12 +20618,12 @@ type IndexCoverageSignalsReport = {
|
|
|
20618
20618
|
templateReview: IndexCoverageTemplateReview;
|
|
20619
20619
|
caveats: string[];
|
|
20620
20620
|
};
|
|
20621
|
-
declare function analyzeIndexCoverageSignals(input: IndexCoverageInput): IndexCoverageSignalsReport;
|
|
20621
|
+
export declare function analyzeIndexCoverageSignals(input: IndexCoverageInput): IndexCoverageSignalsReport;
|
|
20622
20622
|
//#endregion
|
|
20623
20623
|
//#region packages/core/src/analyze/monitoring/index-coverage-report.d.ts
|
|
20624
20624
|
type SearchAnalytics = typeof querySearchAnalytics;
|
|
20625
20625
|
type FetchSitemap = typeof fetchSitemapUrls;
|
|
20626
|
-
type IndexCoverageReportInput = {
|
|
20626
|
+
export type IndexCoverageReportInput = {
|
|
20627
20627
|
site: string;
|
|
20628
20628
|
/** Start URL for the crawl. Defaults to the property's home page. */
|
|
20629
20629
|
url?: string;
|
|
@@ -20636,7 +20636,7 @@ type IndexCoverageReportInput = {
|
|
|
20636
20636
|
templateSamples?: number;
|
|
20637
20637
|
refresh?: boolean;
|
|
20638
20638
|
};
|
|
20639
|
-
type IndexCoverageReport = IndexCoverageSignalsReport & {
|
|
20639
|
+
export type IndexCoverageReport = IndexCoverageSignalsReport & {
|
|
20640
20640
|
site: string;
|
|
20641
20641
|
input: {
|
|
20642
20642
|
crawlReport: {
|
|
@@ -20659,24 +20659,24 @@ type IndexCoverageReport = IndexCoverageSignalsReport & {
|
|
|
20659
20659
|
};
|
|
20660
20660
|
};
|
|
20661
20661
|
};
|
|
20662
|
-
type IndexCoverageReportDependencies = {
|
|
20662
|
+
export type IndexCoverageReportDependencies = {
|
|
20663
20663
|
crawl: (input: CrawlConfigInput) => Promise<CrawlReport>;
|
|
20664
20664
|
searchAnalytics: SearchAnalytics;
|
|
20665
20665
|
fetchSitemap: FetchSitemap;
|
|
20666
20666
|
now: () => Date;
|
|
20667
20667
|
};
|
|
20668
|
-
declare function indexCoverageSignals(input: IndexCoverageReportInput, dependencies?: IndexCoverageReportDependencies): Promise<IndexCoverageReport>;
|
|
20668
|
+
export declare function indexCoverageSignals(input: IndexCoverageReportInput, dependencies?: IndexCoverageReportDependencies): Promise<IndexCoverageReport>;
|
|
20669
20669
|
//#endregion
|
|
20670
20670
|
//#region packages/core/src/analyze/monitoring/redirect-trace.d.ts
|
|
20671
|
-
type RedirectTraceStep = {
|
|
20671
|
+
export type RedirectTraceStep = {
|
|
20672
20672
|
url: string;
|
|
20673
20673
|
status: number;
|
|
20674
20674
|
location?: string;
|
|
20675
20675
|
nextUrl?: string;
|
|
20676
20676
|
durationMs: number;
|
|
20677
20677
|
};
|
|
20678
|
-
type RedirectTraceIssue = 'redirect-loop' | 'too-many-redirects' | 'redirect-without-location' | 'final-4xx' | 'final-5xx' | 'non-indexable-final' | 'canonical-mismatch';
|
|
20679
|
-
type RedirectTraceReport = {
|
|
20678
|
+
export type RedirectTraceIssue = 'redirect-loop' | 'too-many-redirects' | 'redirect-without-location' | 'final-4xx' | 'final-5xx' | 'non-indexable-final' | 'canonical-mismatch';
|
|
20679
|
+
export type RedirectTraceReport = {
|
|
20680
20680
|
url: string;
|
|
20681
20681
|
finalUrl: string;
|
|
20682
20682
|
generatedAt: string;
|
|
@@ -20696,7 +20696,7 @@ type RedirectTraceReport = {
|
|
|
20696
20696
|
};
|
|
20697
20697
|
warnings: string[];
|
|
20698
20698
|
};
|
|
20699
|
-
declare function redirectTrace(input: {
|
|
20699
|
+
export declare function redirectTrace(input: {
|
|
20700
20700
|
url: string;
|
|
20701
20701
|
maxHops?: number;
|
|
20702
20702
|
timeoutMs?: number;
|
|
@@ -20705,7 +20705,7 @@ declare function redirectTrace(input: {
|
|
|
20705
20705
|
}): Promise<RedirectTraceReport>;
|
|
20706
20706
|
//#endregion
|
|
20707
20707
|
//#region packages/core/src/analyze/monitoring/link-recover.d.ts
|
|
20708
|
-
type LinkRecoverItem = {
|
|
20708
|
+
export type LinkRecoverItem = {
|
|
20709
20709
|
url: string;
|
|
20710
20710
|
finalUrl: string;
|
|
20711
20711
|
clicks: number;
|
|
@@ -20717,7 +20717,7 @@ type LinkRecoverItem = {
|
|
|
20717
20717
|
trace: Pick<RedirectTraceReport, 'summary' | 'chain' | 'finalPage' | 'warnings'>;
|
|
20718
20718
|
recommendation: Recommendation;
|
|
20719
20719
|
};
|
|
20720
|
-
type LinkRecoverReport = {
|
|
20720
|
+
export type LinkRecoverReport = {
|
|
20721
20721
|
site: string;
|
|
20722
20722
|
generatedAt: string;
|
|
20723
20723
|
range: {
|
|
@@ -20737,14 +20737,14 @@ type LinkRecoverReport = {
|
|
|
20737
20737
|
items: LinkRecoverItem[];
|
|
20738
20738
|
warnings: string[];
|
|
20739
20739
|
};
|
|
20740
|
-
declare function linkRecoverRecommendation(input: {
|
|
20740
|
+
export declare function linkRecoverRecommendation(input: {
|
|
20741
20741
|
issue: RedirectTraceIssue;
|
|
20742
20742
|
url: string;
|
|
20743
20743
|
finalUrl: string;
|
|
20744
20744
|
clicks: number;
|
|
20745
20745
|
impressions: number;
|
|
20746
20746
|
}): Recommendation;
|
|
20747
|
-
declare function linkRecover(input: {
|
|
20747
|
+
export declare function linkRecover(input: {
|
|
20748
20748
|
site: string;
|
|
20749
20749
|
days?: number;
|
|
20750
20750
|
limit?: number;
|
|
@@ -20755,20 +20755,20 @@ declare function linkRecover(input: {
|
|
|
20755
20755
|
}): Promise<LinkRecoverReport>;
|
|
20756
20756
|
//#endregion
|
|
20757
20757
|
//#region packages/core/src/analyze/performance-types.d.ts
|
|
20758
|
-
type PerformanceRating = 'good' | 'needs-work' | 'poor' | 'unknown';
|
|
20759
|
-
type PerformanceMetric = {
|
|
20758
|
+
export type PerformanceRating = 'good' | 'needs-work' | 'poor' | 'unknown';
|
|
20759
|
+
export type PerformanceMetric = {
|
|
20760
20760
|
value?: number;
|
|
20761
20761
|
displayValue?: string;
|
|
20762
20762
|
score?: number;
|
|
20763
20763
|
rating?: PerformanceRating;
|
|
20764
20764
|
source?: 'lighthouse-lab' | 'fetch-fallback';
|
|
20765
20765
|
};
|
|
20766
|
-
type PerformanceFieldMetric = {
|
|
20766
|
+
export type PerformanceFieldMetric = {
|
|
20767
20767
|
p75: number;
|
|
20768
20768
|
unit: 'milliseconds' | 'score';
|
|
20769
20769
|
rating: Exclude<PerformanceRating, 'unknown'>;
|
|
20770
20770
|
};
|
|
20771
|
-
type PerformanceFieldData = {
|
|
20771
|
+
export type PerformanceFieldData = {
|
|
20772
20772
|
source: 'crux';
|
|
20773
20773
|
status: 'available';
|
|
20774
20774
|
scope: 'origin' | 'url';
|
|
@@ -20791,8 +20791,8 @@ type PerformanceFieldData = {
|
|
|
20791
20791
|
missingMetrics: Array<'CLS' | 'INP' | 'LCP'>;
|
|
20792
20792
|
};
|
|
20793
20793
|
};
|
|
20794
|
-
type LighthouseFailureCode = 'binary_missing' | 'chrome_missing' | 'invalid_result' | 'run_failed' | 'timeout';
|
|
20795
|
-
type PerformanceAuditReport = {
|
|
20794
|
+
export type LighthouseFailureCode = 'binary_missing' | 'chrome_missing' | 'invalid_result' | 'run_failed' | 'timeout';
|
|
20795
|
+
export type PerformanceAuditReport = {
|
|
20796
20796
|
schemaVersion: 1;
|
|
20797
20797
|
methodology: 'performance-v2';
|
|
20798
20798
|
dataStatus: 'complete' | 'partial';
|
|
@@ -20866,7 +20866,7 @@ type CruxResult = {
|
|
|
20866
20866
|
status: PerformanceAuditReport['fieldDataStatus'];
|
|
20867
20867
|
caveat: string;
|
|
20868
20868
|
};
|
|
20869
|
-
declare function fetchCruxFieldData(input: {
|
|
20869
|
+
export declare function fetchCruxFieldData(input: {
|
|
20870
20870
|
url: string;
|
|
20871
20871
|
strategy?: 'desktop' | 'mobile';
|
|
20872
20872
|
apiKey?: string;
|
|
@@ -20875,13 +20875,13 @@ declare function fetchCruxFieldData(input: {
|
|
|
20875
20875
|
}): Promise<CruxResult>;
|
|
20876
20876
|
//#endregion
|
|
20877
20877
|
//#region packages/core/src/analyze/performance.d.ts
|
|
20878
|
-
declare function performanceReportIsCacheable(input: {
|
|
20878
|
+
export declare function performanceReportIsCacheable(input: {
|
|
20879
20879
|
report: PerformanceAuditReport;
|
|
20880
20880
|
customCrux?: boolean;
|
|
20881
20881
|
customLighthouse?: boolean;
|
|
20882
20882
|
includeRaw?: boolean;
|
|
20883
20883
|
}): boolean;
|
|
20884
|
-
declare function performanceAudit(input: {
|
|
20884
|
+
export declare function performanceAudit(input: {
|
|
20885
20885
|
url: string;
|
|
20886
20886
|
strategy?: 'mobile' | 'desktop';
|
|
20887
20887
|
lighthouseBin?: string;
|
|
@@ -20908,11 +20908,11 @@ type QueryClusterPage = {
|
|
|
20908
20908
|
impressions: number;
|
|
20909
20909
|
clicks: number;
|
|
20910
20910
|
};
|
|
20911
|
-
declare function queryClusterTokens(query: string): string[];
|
|
20912
|
-
declare function clusterQueryRows(rows: QueryClusterRow[]): QueryClusterRow[][];
|
|
20911
|
+
export declare function queryClusterTokens(query: string): string[];
|
|
20912
|
+
export declare function clusterQueryRows(rows: QueryClusterRow[]): QueryClusterRow[][];
|
|
20913
20913
|
//#endregion
|
|
20914
20914
|
//#region packages/core/src/analyze/query-cluster-analysis.d.ts
|
|
20915
|
-
declare function analyzeQueryClustersFromRows(input: {
|
|
20915
|
+
export declare function analyzeQueryClustersFromRows(input: {
|
|
20916
20916
|
rows: QueryClusterRow[];
|
|
20917
20917
|
brand?: string;
|
|
20918
20918
|
minImpressions?: number;
|
|
@@ -20930,7 +20930,7 @@ declare function analyzeQueryClustersFromRows(input: {
|
|
|
20930
20930
|
};
|
|
20931
20931
|
//#endregion
|
|
20932
20932
|
//#region packages/core/src/analyze/query-cluster.d.ts
|
|
20933
|
-
type QueryClusterReport = {
|
|
20933
|
+
export type QueryClusterReport = {
|
|
20934
20934
|
site: string;
|
|
20935
20935
|
scope?: string;
|
|
20936
20936
|
range: {
|
|
@@ -20953,8 +20953,8 @@ type QueryClusterReport = {
|
|
|
20953
20953
|
caveats: string[];
|
|
20954
20954
|
recommendations: string[];
|
|
20955
20955
|
};
|
|
20956
|
-
type QueryClusterSourceRow = Awaited<ReturnType<typeof querySearchAnalytics>>['rows'][number];
|
|
20957
|
-
declare function queryClusterReport(input: {
|
|
20956
|
+
export type QueryClusterSourceRow = Awaited<ReturnType<typeof querySearchAnalytics>>['rows'][number];
|
|
20957
|
+
export declare function queryClusterReport(input: {
|
|
20958
20958
|
site: string;
|
|
20959
20959
|
days?: number;
|
|
20960
20960
|
scope?: string;
|
|
@@ -20965,7 +20965,7 @@ declare function queryClusterReport(input: {
|
|
|
20965
20965
|
limit?: number;
|
|
20966
20966
|
refresh?: boolean;
|
|
20967
20967
|
}): Promise<QueryClusterReport>;
|
|
20968
|
-
declare function buildQueryClusterReportFromRows(input: {
|
|
20968
|
+
export declare function buildQueryClusterReportFromRows(input: {
|
|
20969
20969
|
site: string;
|
|
20970
20970
|
days: number;
|
|
20971
20971
|
range: {
|
|
@@ -20983,11 +20983,11 @@ declare function buildQueryClusterReportFromRows(input: {
|
|
|
20983
20983
|
}): QueryClusterReport;
|
|
20984
20984
|
//#endregion
|
|
20985
20985
|
//#region packages/core/src/analyze/reports/types.d.ts
|
|
20986
|
-
type NarrativeSection = {
|
|
20986
|
+
export type NarrativeSection = {
|
|
20987
20987
|
title: string;
|
|
20988
20988
|
bullets: string[];
|
|
20989
20989
|
};
|
|
20990
|
-
type ReportNarrative = {
|
|
20990
|
+
export type ReportNarrative = {
|
|
20991
20991
|
site: string;
|
|
20992
20992
|
generatedAt: string;
|
|
20993
20993
|
dataStatus: DiagnosePropertyReport['dataStatus'];
|
|
@@ -21008,7 +21008,7 @@ type ReportNarrative = {
|
|
|
21008
21008
|
};
|
|
21009
21009
|
//#endregion
|
|
21010
21010
|
//#region packages/core/src/analyze/reports/narrative.d.ts
|
|
21011
|
-
declare function reportNarrative(input: {
|
|
21011
|
+
export declare function reportNarrative(input: {
|
|
21012
21012
|
site: string;
|
|
21013
21013
|
days?: number;
|
|
21014
21014
|
recentDays?: number;
|
|
@@ -21029,7 +21029,7 @@ declare function reportNarrative(input: {
|
|
|
21029
21029
|
}>;
|
|
21030
21030
|
//#endregion
|
|
21031
21031
|
//#region packages/core/src/analyze/second-page-report.d.ts
|
|
21032
|
-
type SecondPageInput = {
|
|
21032
|
+
export type SecondPageInput = {
|
|
21033
21033
|
site: string;
|
|
21034
21034
|
/** Window length in days; ignored when startDate and endDate are given. */
|
|
21035
21035
|
range?: number;
|
|
@@ -21047,7 +21047,7 @@ type SecondPageInput = {
|
|
|
21047
21047
|
brandTerms?: string[];
|
|
21048
21048
|
includeBrand?: boolean;
|
|
21049
21049
|
};
|
|
21050
|
-
type SecondPageDependencies = {
|
|
21050
|
+
export type SecondPageDependencies = {
|
|
21051
21051
|
searchAnalytics: SearchAnalyticsQuery;
|
|
21052
21052
|
/** Required only when page verification is requested. */
|
|
21053
21053
|
fetch?: PageFetcher;
|
|
@@ -21055,23 +21055,23 @@ type SecondPageDependencies = {
|
|
|
21055
21055
|
extract?: PageExtractor;
|
|
21056
21056
|
now: () => Date;
|
|
21057
21057
|
};
|
|
21058
|
-
declare function secondPageWith(input: SecondPageInput, dependencies: SecondPageDependencies): Promise<SecondPageReport>;
|
|
21058
|
+
export declare function secondPageWith(input: SecondPageInput, dependencies: SecondPageDependencies): Promise<SecondPageReport>;
|
|
21059
21059
|
//#endregion
|
|
21060
21060
|
//#region packages/core/src/analyze/second-page-analysis.d.ts
|
|
21061
|
-
declare function analyzeSecondPageRows(input: AnalyzeSecondPageInput): SecondPageAnalysis;
|
|
21061
|
+
export declare function analyzeSecondPageRows(input: AnalyzeSecondPageInput): SecondPageAnalysis;
|
|
21062
21062
|
//#endregion
|
|
21063
21063
|
//#region packages/core/src/analyze/second-page.d.ts
|
|
21064
|
-
declare function secondPage(input: SecondPageInput, dependencies?: SecondPageDependencies): Promise<SecondPageReport>;
|
|
21064
|
+
export declare function secondPage(input: SecondPageInput, dependencies?: SecondPageDependencies): Promise<SecondPageReport>;
|
|
21065
21065
|
//#endregion
|
|
21066
21066
|
//#region packages/core/src/analyze/title-width.d.ts
|
|
21067
|
-
declare const SERP_TITLE_REFERENCE_WIDTH_PX = 580;
|
|
21068
|
-
declare const SERP_TITLE_WIDTH_PROFILE: {
|
|
21067
|
+
export declare const SERP_TITLE_REFERENCE_WIDTH_PX = 580;
|
|
21068
|
+
export declare const SERP_TITLE_WIDTH_PROFILE: {
|
|
21069
21069
|
readonly id: "arial-20-v1";
|
|
21070
21070
|
readonly fontFamily: "Arial";
|
|
21071
21071
|
readonly fontSizePixels: 20;
|
|
21072
21072
|
readonly fontWeight: 400;
|
|
21073
21073
|
};
|
|
21074
|
-
type TitleWidthEstimate = {
|
|
21074
|
+
export type TitleWidthEstimate = {
|
|
21075
21075
|
estimatedPixels: number;
|
|
21076
21076
|
referencePixels: number;
|
|
21077
21077
|
status: 'within-reference' | 'near-reference' | 'over-reference';
|
|
@@ -21080,20 +21080,20 @@ type TitleWidthEstimate = {
|
|
|
21080
21080
|
graphemeCount: number;
|
|
21081
21081
|
fallbackGraphemes: string[];
|
|
21082
21082
|
};
|
|
21083
|
-
declare function estimateSerpTitleWidth(title: string): TitleWidthEstimate;
|
|
21083
|
+
export declare function estimateSerpTitleWidth(title: string): TitleWidthEstimate;
|
|
21084
21084
|
//#endregion
|
|
21085
21085
|
//#region packages/core/src/analyze/workflows/types.d.ts
|
|
21086
|
-
type WorkflowStep = {
|
|
21086
|
+
export type WorkflowStep = {
|
|
21087
21087
|
tool: string;
|
|
21088
21088
|
status: 'completed' | 'skipped';
|
|
21089
21089
|
summary: string;
|
|
21090
21090
|
};
|
|
21091
|
-
type WorkflowAction = {
|
|
21091
|
+
export type WorkflowAction = {
|
|
21092
21092
|
title: string;
|
|
21093
21093
|
action: string;
|
|
21094
21094
|
confidence: 'high' | 'medium' | 'low';
|
|
21095
21095
|
};
|
|
21096
|
-
type WorkflowReport<TOutput> = {
|
|
21096
|
+
export type WorkflowReport<TOutput> = {
|
|
21097
21097
|
workflow: string;
|
|
21098
21098
|
site: string;
|
|
21099
21099
|
generatedAt: string;
|
|
@@ -21102,7 +21102,7 @@ type WorkflowReport<TOutput> = {
|
|
|
21102
21102
|
actions: WorkflowAction[];
|
|
21103
21103
|
output: TOutput;
|
|
21104
21104
|
};
|
|
21105
|
-
type PriorityQueueItem = {
|
|
21105
|
+
export type PriorityQueueItem = {
|
|
21106
21106
|
source: 'decay' | 'striking-distance' | 'quick-win' | 'cannibalization' | 'diagnosis' | 'template' | 'crawl';
|
|
21107
21107
|
title: string;
|
|
21108
21108
|
target: string;
|
|
@@ -21154,7 +21154,7 @@ type PriorityQueueItem = {
|
|
|
21154
21154
|
};
|
|
21155
21155
|
//#endregion
|
|
21156
21156
|
//#region packages/core/src/analyze/workflows/crawl-implementation-queue.d.ts
|
|
21157
|
-
type CrawlImplementationQueueItem = PriorityQueueItem & {
|
|
21157
|
+
export type CrawlImplementationQueueItem = PriorityQueueItem & {
|
|
21158
21158
|
ruleId: string;
|
|
21159
21159
|
severity: RuleSeverity;
|
|
21160
21160
|
affectedUrls: number;
|
|
@@ -21162,20 +21162,20 @@ type CrawlImplementationQueueItem = PriorityQueueItem & {
|
|
|
21162
21162
|
whyThisRanks: string;
|
|
21163
21163
|
verification: TopFix['verification'];
|
|
21164
21164
|
};
|
|
21165
|
-
type CrawlImplementationQueueOutput = {
|
|
21165
|
+
export type CrawlImplementationQueueOutput = {
|
|
21166
21166
|
queue: CrawlImplementationQueueItem[];
|
|
21167
21167
|
warnings: string[];
|
|
21168
21168
|
crawl: CrawlReport;
|
|
21169
21169
|
topFixes: TopFix[];
|
|
21170
21170
|
};
|
|
21171
|
-
type CrawlImplementationQueueInput = CrawlConfigInput & {
|
|
21171
|
+
export type CrawlImplementationQueueInput = CrawlConfigInput & {
|
|
21172
21172
|
limit?: number;
|
|
21173
21173
|
};
|
|
21174
|
-
declare function crawlFixToQueueItem(fix: TopFix): CrawlImplementationQueueItem;
|
|
21175
|
-
declare function crawlImplementationQueueWorkflow(input: CrawlImplementationQueueInput, dependencies?: CrawlSiteDependencies): Promise<WorkflowReport<CrawlImplementationQueueOutput>>;
|
|
21174
|
+
export declare function crawlFixToQueueItem(fix: TopFix): CrawlImplementationQueueItem;
|
|
21175
|
+
export declare function crawlImplementationQueueWorkflow(input: CrawlImplementationQueueInput, dependencies?: CrawlSiteDependencies): Promise<WorkflowReport<CrawlImplementationQueueOutput>>;
|
|
21176
21176
|
//#endregion
|
|
21177
21177
|
//#region packages/core/src/analyze/workflows/diagnose-property.d.ts
|
|
21178
|
-
declare function diagnosePropertyWorkflow(input: {
|
|
21178
|
+
export declare function diagnosePropertyWorkflow(input: {
|
|
21179
21179
|
site: string;
|
|
21180
21180
|
days?: number;
|
|
21181
21181
|
recentDays?: number;
|
|
@@ -21189,24 +21189,24 @@ declare function diagnosePropertyWorkflow(input: {
|
|
|
21189
21189
|
}>>;
|
|
21190
21190
|
//#endregion
|
|
21191
21191
|
//#region packages/core/src/analyze/workflows/markdown.d.ts
|
|
21192
|
-
declare function renderWorkflowMarkdown(report: WorkflowReport<unknown>, options?: {
|
|
21192
|
+
export declare function renderWorkflowMarkdown(report: WorkflowReport<unknown>, options?: {
|
|
21193
21193
|
queueLimit?: number;
|
|
21194
21194
|
}): string;
|
|
21195
21195
|
//#endregion
|
|
21196
21196
|
//#region packages/core/src/presentation.d.ts
|
|
21197
|
-
type PresentationScalar = boolean | number | string | null;
|
|
21198
|
-
type PresentationTableColumn = {
|
|
21197
|
+
export type PresentationScalar = boolean | number | string | null;
|
|
21198
|
+
export type PresentationTableColumn = {
|
|
21199
21199
|
key: string;
|
|
21200
21200
|
label: string;
|
|
21201
21201
|
type?: 'number' | 'string' | 'url';
|
|
21202
21202
|
};
|
|
21203
|
-
type PresentationTable = {
|
|
21203
|
+
export type PresentationTable = {
|
|
21204
21204
|
id: string;
|
|
21205
21205
|
title: string;
|
|
21206
21206
|
columns: PresentationTableColumn[];
|
|
21207
21207
|
rows: Array<Record<string, PresentationScalar>>;
|
|
21208
21208
|
};
|
|
21209
|
-
type PresentationChart = {
|
|
21209
|
+
export type PresentationChart = {
|
|
21210
21210
|
id: string;
|
|
21211
21211
|
title: string;
|
|
21212
21212
|
type: 'bar';
|
|
@@ -21214,13 +21214,13 @@ type PresentationChart = {
|
|
|
21214
21214
|
xKey: string;
|
|
21215
21215
|
yKey: string;
|
|
21216
21216
|
};
|
|
21217
|
-
type Presentation = {
|
|
21217
|
+
export type Presentation = {
|
|
21218
21218
|
tables: PresentationTable[];
|
|
21219
21219
|
charts: PresentationChart[];
|
|
21220
21220
|
};
|
|
21221
21221
|
//#endregion
|
|
21222
21222
|
//#region packages/core/src/analyze/workflows/presentation.d.ts
|
|
21223
|
-
declare function workflowPresentation(report: WorkflowReport<unknown>, options?: {
|
|
21223
|
+
export declare function workflowPresentation(report: WorkflowReport<unknown>, options?: {
|
|
21224
21224
|
queueLimit?: number;
|
|
21225
21225
|
}): Presentation;
|
|
21226
21226
|
//#endregion
|
|
@@ -21234,7 +21234,7 @@ type QueueDraft = Omit<PriorityQueueItem, 'category' | 'score' | 'impact' | 'sco
|
|
|
21234
21234
|
effort?: 'S' | 'M' | 'L';
|
|
21235
21235
|
verification?: Parameters<typeof priorityCategory>[1];
|
|
21236
21236
|
};
|
|
21237
|
-
declare function decayClusterDrafts(input: {
|
|
21237
|
+
export declare function decayClusterDrafts(input: {
|
|
21238
21238
|
groups: Array<{
|
|
21239
21239
|
label: string;
|
|
21240
21240
|
diagnosis: 'lost_position' | 'lost_ctr' | 'lost_impressions' | 'lost_clicks';
|
|
@@ -21250,7 +21250,7 @@ declare function decayClusterDrafts(input: {
|
|
|
21250
21250
|
}>;
|
|
21251
21251
|
site: string;
|
|
21252
21252
|
}): QueueDraft[];
|
|
21253
|
-
declare function refreshPrioritiesWorkflow(input: {
|
|
21253
|
+
export declare function refreshPrioritiesWorkflow(input: {
|
|
21254
21254
|
site: string;
|
|
21255
21255
|
days?: number;
|
|
21256
21256
|
recentDays?: number;
|
|
@@ -21328,8 +21328,8 @@ type PostmortemOutput = {
|
|
|
21328
21328
|
country: SplitSegment;
|
|
21329
21329
|
};
|
|
21330
21330
|
};
|
|
21331
|
-
declare function inferTemplateMovement(pageSegment: Pick<SplitSegment, 'winners' | 'losers' | 'coverage'>): TemplateMovement[];
|
|
21332
|
-
declare function updatePostmortemWorkflow(input: {
|
|
21331
|
+
export declare function inferTemplateMovement(pageSegment: Pick<SplitSegment, 'winners' | 'losers' | 'coverage'>): TemplateMovement[];
|
|
21332
|
+
export declare function updatePostmortemWorkflow(input: {
|
|
21333
21333
|
site: string;
|
|
21334
21334
|
days?: number;
|
|
21335
21335
|
recentDays?: number;
|
|
@@ -21344,24 +21344,24 @@ declare function updatePostmortemWorkflow(input: {
|
|
|
21344
21344
|
}): Promise<WorkflowReport<PostmortemOutput>>;
|
|
21345
21345
|
//#endregion
|
|
21346
21346
|
//#region packages/core/src/brand.d.ts
|
|
21347
|
-
declare function normalizeBrandText(value: string): string;
|
|
21347
|
+
export declare function normalizeBrandText(value: string): string;
|
|
21348
21348
|
/**
|
|
21349
21349
|
* The registrable part of a Search Console property host, using the small
|
|
21350
21350
|
* built-in list of country-code second levels. `sc-domain:docs.example.co.uk`
|
|
21351
21351
|
* returns `{ domain: 'example.co.uk', stem: 'example', suffix: 'co.uk' }`.
|
|
21352
21352
|
*/
|
|
21353
|
-
declare function registrableDomain(siteUrl: string): {
|
|
21353
|
+
export declare function registrableDomain(siteUrl: string): {
|
|
21354
21354
|
domain: string;
|
|
21355
21355
|
stem: string;
|
|
21356
21356
|
suffix: string;
|
|
21357
21357
|
} | undefined;
|
|
21358
|
-
declare function deriveBrandTerms(input: {
|
|
21358
|
+
export declare function deriveBrandTerms(input: {
|
|
21359
21359
|
id?: string;
|
|
21360
21360
|
name?: string;
|
|
21361
21361
|
siteUrl: string;
|
|
21362
21362
|
}): string[];
|
|
21363
|
-
declare function isBrandQuery(query: string, brandTerms: string[]): boolean;
|
|
21364
|
-
declare function shouldExcludeBrandQuery(input: {
|
|
21363
|
+
export declare function isBrandQuery(query: string, brandTerms: string[]): boolean;
|
|
21364
|
+
export declare function shouldExcludeBrandQuery(input: {
|
|
21365
21365
|
query: string;
|
|
21366
21366
|
siteUrl: string;
|
|
21367
21367
|
brandTerms?: string[];
|
|
@@ -21376,12 +21376,12 @@ type BrandEvidence = {
|
|
|
21376
21376
|
ctr: number;
|
|
21377
21377
|
position: number;
|
|
21378
21378
|
};
|
|
21379
|
-
type BrandTermCandidate = {
|
|
21379
|
+
export type BrandTermCandidate = {
|
|
21380
21380
|
term: string;
|
|
21381
21381
|
score: number;
|
|
21382
21382
|
evidence: BrandEvidence[];
|
|
21383
21383
|
};
|
|
21384
|
-
declare function detectBrandTerms(input: {
|
|
21384
|
+
export declare function detectBrandTerms(input: {
|
|
21385
21385
|
site: string;
|
|
21386
21386
|
id?: string;
|
|
21387
21387
|
name?: string;
|
|
@@ -21398,88 +21398,47 @@ declare function detectBrandTerms(input: {
|
|
|
21398
21398
|
}>;
|
|
21399
21399
|
//#endregion
|
|
21400
21400
|
//#region packages/core/src/storage/provider-secrets.d.ts
|
|
21401
|
-
declare const PROVIDER_SECRET_NAMES: {
|
|
21401
|
+
export declare const PROVIDER_SECRET_NAMES: {
|
|
21402
21402
|
readonly ahrefsApiKey: "ahrefs-api-key";
|
|
21403
21403
|
readonly bingApiKey: "bing-api-key";
|
|
21404
21404
|
readonly clickySiteKeys: "clicky-sitekeys";
|
|
21405
21405
|
readonly dataForSeoCredentials: "dataforseo-credentials";
|
|
21406
21406
|
readonly providerExtensionCredentials: "provider-extension-credentials";
|
|
21407
21407
|
};
|
|
21408
|
-
declare const MANAGED_PROVIDER_SECRET_NAMES: readonly string[];
|
|
21409
|
-
type ProviderSecretSource = 'environment' | 'keychain' | 'file';
|
|
21410
|
-
type ProviderSecret = {
|
|
21408
|
+
export declare const MANAGED_PROVIDER_SECRET_NAMES: readonly string[];
|
|
21409
|
+
export type ProviderSecretSource = 'environment' | 'keychain' | 'file';
|
|
21410
|
+
export type ProviderSecret = {
|
|
21411
21411
|
value: string;
|
|
21412
21412
|
source: ProviderSecretSource;
|
|
21413
21413
|
};
|
|
21414
|
-
declare function readProviderSecret(input: {
|
|
21414
|
+
export declare function readProviderSecret(input: {
|
|
21415
21415
|
name: string;
|
|
21416
21416
|
envVar?: string;
|
|
21417
21417
|
env?: NodeJS.ProcessEnv;
|
|
21418
21418
|
}): Promise<ProviderSecret | undefined>;
|
|
21419
|
-
declare function writeProviderSecret(name: string, value: string): Promise<Exclude<ProviderSecretSource, 'environment'>>;
|
|
21420
|
-
declare function deleteProviderSecret(name: string): Promise<void>;
|
|
21421
|
-
declare function deleteManagedProviderSecrets(): Promise<void>;
|
|
21419
|
+
export declare function writeProviderSecret(name: string, value: string): Promise<Exclude<ProviderSecretSource, 'environment'>>;
|
|
21420
|
+
export declare function deleteProviderSecret(name: string): Promise<void>;
|
|
21421
|
+
export declare function deleteManagedProviderSecrets(): Promise<void>;
|
|
21422
21422
|
//#endregion
|
|
21423
21423
|
//#region packages/core/src/clicky/credentials.d.ts
|
|
21424
|
-
declare const CLICKY_SITEKEY_ENV = "SEO_CLICKY_SITEKEY";
|
|
21425
|
-
declare const CLICKY_SITE_KEYS_SECRET: "clicky-sitekeys";
|
|
21426
|
-
type StoredClickySiteKey = {
|
|
21424
|
+
export declare const CLICKY_SITEKEY_ENV = "SEO_CLICKY_SITEKEY";
|
|
21425
|
+
export declare const CLICKY_SITE_KEYS_SECRET: "clicky-sitekeys";
|
|
21426
|
+
export type StoredClickySiteKey = {
|
|
21427
21427
|
siteKey: string;
|
|
21428
21428
|
source: ProviderSecretSource;
|
|
21429
21429
|
};
|
|
21430
|
-
declare function normalizeClickySiteId(value: string): string;
|
|
21431
|
-
declare function normalizeClickySiteKey(value: string): string;
|
|
21432
|
-
declare function readClickySiteKeys(): Promise<Record<string, string>>;
|
|
21433
|
-
declare function readClickySiteKey(siteIdValue: string, input?: {
|
|
21430
|
+
export declare function normalizeClickySiteId(value: string): string;
|
|
21431
|
+
export declare function normalizeClickySiteKey(value: string): string;
|
|
21432
|
+
export declare function readClickySiteKeys(): Promise<Record<string, string>>;
|
|
21433
|
+
export declare function readClickySiteKey(siteIdValue: string, input?: {
|
|
21434
21434
|
env?: NodeJS.ProcessEnv;
|
|
21435
21435
|
}): Promise<StoredClickySiteKey | undefined>;
|
|
21436
|
-
declare function writeClickySiteKey(siteIdValue: string, siteKeyValue: string): Promise<Exclude<ProviderSecretSource, 'environment'>>;
|
|
21437
|
-
declare function deleteClickySiteKey(siteIdValue: string): Promise<void>;
|
|
21436
|
+
export declare function writeClickySiteKey(siteIdValue: string, siteKeyValue: string): Promise<Exclude<ProviderSecretSource, 'environment'>>;
|
|
21437
|
+
export declare function deleteClickySiteKey(siteIdValue: string): Promise<void>;
|
|
21438
21438
|
//#endregion
|
|
21439
21439
|
//#region packages/core/src/bing/api.d.ts
|
|
21440
21440
|
type BingCall = (method: string, params?: Record<string, string>) => Promise<unknown>;
|
|
21441
21441
|
//#endregion
|
|
21442
|
-
//#region packages/core/src/cloud.d.ts
|
|
21443
|
-
declare const CLOUD_URL = "https://seoskill.dev";
|
|
21444
|
-
type Pending = {
|
|
21445
|
-
device: string;
|
|
21446
|
-
code: string;
|
|
21447
|
-
url: string;
|
|
21448
|
-
expiresAt: number;
|
|
21449
|
-
};
|
|
21450
|
-
type Token = {
|
|
21451
|
-
token: string;
|
|
21452
|
-
expiresAt: number;
|
|
21453
|
-
} | {
|
|
21454
|
-
error: string;
|
|
21455
|
-
};
|
|
21456
|
-
type CloudCredentials = {
|
|
21457
|
-
account: string;
|
|
21458
|
-
google: ({
|
|
21459
|
-
email: string;
|
|
21460
|
-
} & Token)[];
|
|
21461
|
-
bing: ({
|
|
21462
|
-
label: string;
|
|
21463
|
-
} & Token)[];
|
|
21464
|
-
keys: Record<string, string>;
|
|
21465
|
-
};
|
|
21466
|
-
declare function cloudLinked(): boolean;
|
|
21467
|
-
declare const CLOUD_SIGN_IN = "Run `seo login` to link this machine to your seoskill.dev account again.";
|
|
21468
|
-
declare function cloudCredentials(options?: {
|
|
21469
|
-
refreshClicky?: boolean;
|
|
21470
|
-
}): Promise<CloudCredentials>;
|
|
21471
|
-
declare function notSignedIn(): string;
|
|
21472
|
-
declare function cloudGoogleToken(email?: string): Promise<string>;
|
|
21473
|
-
declare function cloudGoogleEmails(): Promise<string[]>;
|
|
21474
|
-
declare function cloudAccountFor(site: string): Promise<string | undefined>;
|
|
21475
|
-
declare function cloudBing(): Promise<BingCall | null>;
|
|
21476
|
-
declare function cloudKeys(): Promise<Record<string, string>>;
|
|
21477
|
-
declare function startCloudLogin(): Promise<Pending>;
|
|
21478
|
-
declare function pendingCloudLogin(): Pending | null;
|
|
21479
|
-
declare function finishCloudLogin(): Promise<'linked' | 'pending' | 'expired'>;
|
|
21480
|
-
declare function cloudLogout(): Promise<boolean>;
|
|
21481
|
-
declare function openCloudLink(url: string): Promise<void>;
|
|
21482
|
-
//#endregion
|
|
21483
21442
|
//#region packages/core/src/commands/sites.d.ts
|
|
21484
21443
|
type GoogleAccount = {
|
|
21485
21444
|
email: string | null;
|
|
@@ -21734,6 +21693,7 @@ type CommandDeps = {
|
|
|
21734
21693
|
bingConnect?: string;
|
|
21735
21694
|
analytics?: AnalyticsAccess;
|
|
21736
21695
|
audit?: AuditAccess;
|
|
21696
|
+
week?: () => Promise<WeekData | null>;
|
|
21737
21697
|
now?: () => Date;
|
|
21738
21698
|
};
|
|
21739
21699
|
type PageMarkdown = {
|
|
@@ -21744,39 +21704,118 @@ type PageMarkdown = {
|
|
|
21744
21704
|
error: string;
|
|
21745
21705
|
};
|
|
21746
21706
|
//#endregion
|
|
21707
|
+
//#region packages/core/src/commands/week.d.ts
|
|
21708
|
+
type WeekSite = {
|
|
21709
|
+
property: string;
|
|
21710
|
+
link: string | null;
|
|
21711
|
+
added_at: number;
|
|
21712
|
+
crawl: {
|
|
21713
|
+
finished_at: number;
|
|
21714
|
+
status: 'done' | 'failed';
|
|
21715
|
+
error: string | null;
|
|
21716
|
+
pages: number;
|
|
21717
|
+
new_issues: number;
|
|
21718
|
+
top_rule: string | null;
|
|
21719
|
+
} | null;
|
|
21720
|
+
start_error: string | null;
|
|
21721
|
+
index: {
|
|
21722
|
+
checked: number;
|
|
21723
|
+
dropped: number;
|
|
21724
|
+
returned: number;
|
|
21725
|
+
dropped_pages: {
|
|
21726
|
+
url: string;
|
|
21727
|
+
coverage: string | null;
|
|
21728
|
+
}[];
|
|
21729
|
+
} | null;
|
|
21730
|
+
clicks: {
|
|
21731
|
+
start: string;
|
|
21732
|
+
end: string;
|
|
21733
|
+
clicks: number;
|
|
21734
|
+
previous: number;
|
|
21735
|
+
} | null;
|
|
21736
|
+
};
|
|
21737
|
+
type WeekData = {
|
|
21738
|
+
start: string;
|
|
21739
|
+
end: string;
|
|
21740
|
+
account: string;
|
|
21741
|
+
sites: WeekSite[];
|
|
21742
|
+
};
|
|
21743
|
+
//#endregion
|
|
21744
|
+
//#region packages/core/src/cloud.d.ts
|
|
21745
|
+
export declare const CLOUD_URL = "https://seoskill.dev";
|
|
21746
|
+
type Pending = {
|
|
21747
|
+
device: string;
|
|
21748
|
+
code: string;
|
|
21749
|
+
url: string;
|
|
21750
|
+
expiresAt: number;
|
|
21751
|
+
};
|
|
21752
|
+
type Token = {
|
|
21753
|
+
token: string;
|
|
21754
|
+
expiresAt: number;
|
|
21755
|
+
} | {
|
|
21756
|
+
error: string;
|
|
21757
|
+
};
|
|
21758
|
+
export type CloudCredentials = {
|
|
21759
|
+
account: string;
|
|
21760
|
+
google: ({
|
|
21761
|
+
email: string;
|
|
21762
|
+
} & Token)[];
|
|
21763
|
+
bing: ({
|
|
21764
|
+
label: string;
|
|
21765
|
+
} & Token)[];
|
|
21766
|
+
keys: Record<string, string>;
|
|
21767
|
+
};
|
|
21768
|
+
export declare function cloudLinked(): boolean;
|
|
21769
|
+
export declare const CLOUD_SIGN_IN = "Run `seo login` to link this machine to your seoskill.dev account again.";
|
|
21770
|
+
export declare function cloudCredentials(options?: {
|
|
21771
|
+
refreshClicky?: boolean;
|
|
21772
|
+
}): Promise<CloudCredentials>;
|
|
21773
|
+
export declare function cloudWeek(): Promise<WeekData | null>;
|
|
21774
|
+
export declare function notSignedIn(): string;
|
|
21775
|
+
export declare function cloudGoogleToken(email?: string): Promise<string>;
|
|
21776
|
+
export declare function cloudGoogleEmails(): Promise<string[]>;
|
|
21777
|
+
export declare function cloudAccountFor(site: string): Promise<string | undefined>;
|
|
21778
|
+
export declare function cloudBing(): Promise<BingCall | null>;
|
|
21779
|
+
export declare function cloudKeys(): Promise<Record<string, string>>;
|
|
21780
|
+
export declare function startCloudLogin(): Promise<Pending>;
|
|
21781
|
+
export declare function pendingCloudLogin(): Pending | null;
|
|
21782
|
+
export declare function finishCloudLogin(): Promise<'linked' | 'pending' | 'expired'>;
|
|
21783
|
+
export declare function cloudLogout(): Promise<boolean>;
|
|
21784
|
+
export declare function openCloudLink(url: string): Promise<void>;
|
|
21785
|
+
//#endregion
|
|
21747
21786
|
//#region packages/core/src/storage/config.d.ts
|
|
21748
|
-
type TokenStorageMode = 'keychain' | 'file';
|
|
21749
|
-
type TokenStorageStatus = {
|
|
21787
|
+
export type TokenStorageMode = 'keychain' | 'file';
|
|
21788
|
+
export type TokenStorageStatus = {
|
|
21750
21789
|
configured: TokenStorageMode;
|
|
21751
21790
|
active: TokenStorageMode;
|
|
21752
21791
|
reason?: string;
|
|
21753
21792
|
};
|
|
21754
|
-
declare function readConfig(): AppConfig;
|
|
21755
|
-
declare function writeConfig(config: AppConfig): void;
|
|
21756
|
-
declare function readAllTokens(): Promise<StoredTokens[]>;
|
|
21757
|
-
declare function readTokens(accountEmail?: string): Promise<StoredTokens | undefined>;
|
|
21758
|
-
declare function listGoogleAccounts(): Array<{
|
|
21793
|
+
export declare function readConfig(): AppConfig;
|
|
21794
|
+
export declare function writeConfig(config: AppConfig): void;
|
|
21795
|
+
export declare function readAllTokens(): Promise<StoredTokens[]>;
|
|
21796
|
+
export declare function readTokens(accountEmail?: string): Promise<StoredTokens | undefined>;
|
|
21797
|
+
export declare function listGoogleAccounts(): Array<{
|
|
21759
21798
|
accountEmail: string;
|
|
21760
21799
|
scopes: string[];
|
|
21761
21800
|
expiresAt: number;
|
|
21762
21801
|
active: boolean;
|
|
21763
21802
|
}>;
|
|
21764
|
-
declare function setActiveGoogleAccount(accountEmail: string): void;
|
|
21765
|
-
declare function writeTokens(tokens: StoredTokens, options?: {
|
|
21803
|
+
export declare function setActiveGoogleAccount(accountEmail: string): void;
|
|
21804
|
+
export declare function writeTokens(tokens: StoredTokens, options?: {
|
|
21766
21805
|
makeActive?: boolean;
|
|
21767
21806
|
}): Promise<void>;
|
|
21768
|
-
declare function deleteTokens(accountEmail?: string): Promise<void>;
|
|
21769
|
-
declare function getTokenStorageStatus(): Promise<TokenStorageStatus>;
|
|
21770
|
-
declare function setTokenStorageMode(mode: TokenStorageMode): Promise<TokenStorageStatus>;
|
|
21771
|
-
declare function readOauthClient(): {
|
|
21807
|
+
export declare function deleteTokens(accountEmail?: string): Promise<void>;
|
|
21808
|
+
export declare function getTokenStorageStatus(): Promise<TokenStorageStatus>;
|
|
21809
|
+
export declare function setTokenStorageMode(mode: TokenStorageMode): Promise<TokenStorageStatus>;
|
|
21810
|
+
export declare function readOauthClient(): {
|
|
21772
21811
|
clientId: string;
|
|
21773
21812
|
clientSecret: string;
|
|
21774
21813
|
} | undefined;
|
|
21775
|
-
declare function writeOauthClient(client: {
|
|
21814
|
+
export declare function writeOauthClient(client: {
|
|
21776
21815
|
clientId: string;
|
|
21777
21816
|
clientSecret: string;
|
|
21778
21817
|
}): void;
|
|
21779
|
-
declare function getPrivacySnapshot(): Array<{
|
|
21818
|
+
export declare function getPrivacySnapshot(): Array<{
|
|
21780
21819
|
label: string;
|
|
21781
21820
|
path: string;
|
|
21782
21821
|
mode: string;
|
|
@@ -21795,22 +21834,22 @@ interface GoogleAccessTokenClient {
|
|
|
21795
21834
|
//#endregion
|
|
21796
21835
|
//#region packages/core/src/gsc/auth/service-account.d.ts
|
|
21797
21836
|
type ServiceAccountSource = 'environment-json' | 'environment-file' | 'application-default-file';
|
|
21798
|
-
type ServiceAccountConfig = {
|
|
21837
|
+
export type ServiceAccountConfig = {
|
|
21799
21838
|
clientEmail: string;
|
|
21800
21839
|
privateKey: string;
|
|
21801
21840
|
privateKeyId?: string;
|
|
21802
21841
|
source: ServiceAccountSource;
|
|
21803
21842
|
};
|
|
21804
|
-
type ServiceAccountStatus = {
|
|
21843
|
+
export type ServiceAccountStatus = {
|
|
21805
21844
|
configured: boolean;
|
|
21806
21845
|
identity?: string;
|
|
21807
21846
|
source?: ServiceAccountSource;
|
|
21808
21847
|
error?: string;
|
|
21809
21848
|
};
|
|
21810
21849
|
type Environment = Record<string, string | undefined>;
|
|
21811
|
-
declare function getServiceAccountConfig(environment?: Environment): ServiceAccountConfig | undefined;
|
|
21812
|
-
declare function getServiceAccountStatus(environment?: Environment): ServiceAccountStatus;
|
|
21813
|
-
declare class ServiceAccountAccessTokenClient implements GoogleAccessTokenClient {
|
|
21850
|
+
export declare function getServiceAccountConfig(environment?: Environment): ServiceAccountConfig | undefined;
|
|
21851
|
+
export declare function getServiceAccountStatus(environment?: Environment): ServiceAccountStatus;
|
|
21852
|
+
export declare class ServiceAccountAccessTokenClient implements GoogleAccessTokenClient {
|
|
21814
21853
|
readonly config: ServiceAccountConfig;
|
|
21815
21854
|
private readonly fetchImpl;
|
|
21816
21855
|
private token?;
|
|
@@ -21819,12 +21858,12 @@ declare class ServiceAccountAccessTokenClient implements GoogleAccessTokenClient
|
|
|
21819
21858
|
}
|
|
21820
21859
|
//#endregion
|
|
21821
21860
|
//#region packages/core/src/gsc/auth/authorized-client.d.ts
|
|
21822
|
-
declare function createAuthorizedClient(accountEmail?: string): Promise<{
|
|
21861
|
+
export declare function createAuthorizedClient(accountEmail?: string): Promise<{
|
|
21823
21862
|
client: GoogleAccessTokenClient;
|
|
21824
21863
|
tokens: StoredTokens;
|
|
21825
21864
|
}>;
|
|
21826
|
-
declare function refreshAuthToken(accountEmail?: string): Promise<StoredTokens>;
|
|
21827
|
-
type AuthorizedGoogleClient = {
|
|
21865
|
+
export declare function refreshAuthToken(accountEmail?: string): Promise<StoredTokens>;
|
|
21866
|
+
export type AuthorizedGoogleClient = {
|
|
21828
21867
|
client: GoogleAccessTokenClient;
|
|
21829
21868
|
mode: 'oauth' | 'service-account' | 'cloud';
|
|
21830
21869
|
identity: string;
|
|
@@ -21834,8 +21873,8 @@ type AuthorizedGoogleClient = {
|
|
|
21834
21873
|
};
|
|
21835
21874
|
tokens?: StoredTokens;
|
|
21836
21875
|
};
|
|
21837
|
-
declare function createGoogleAccessTokenClient(accountEmail?: string): Promise<AuthorizedGoogleClient>;
|
|
21838
|
-
declare function authStatus(): Promise<{
|
|
21876
|
+
export declare function createGoogleAccessTokenClient(accountEmail?: string): Promise<AuthorizedGoogleClient>;
|
|
21877
|
+
export declare function authStatus(): Promise<{
|
|
21839
21878
|
tokens?: StoredTokens;
|
|
21840
21879
|
accounts: ReturnType<typeof listGoogleAccounts>;
|
|
21841
21880
|
configured: boolean;
|
|
@@ -21847,44 +21886,44 @@ declare function authStatus(): Promise<{
|
|
|
21847
21886
|
}>;
|
|
21848
21887
|
//#endregion
|
|
21849
21888
|
//#region packages/core/src/gsc/auth/client-config.d.ts
|
|
21850
|
-
declare function getAuthModeStatus(): {
|
|
21889
|
+
export declare function getAuthModeStatus(): {
|
|
21851
21890
|
sharedConfigured: boolean;
|
|
21852
21891
|
byoConfigured: boolean;
|
|
21853
21892
|
};
|
|
21854
|
-
declare function getClientConfig(source?: OAuthClientConfig['source']): OAuthClientConfig | undefined;
|
|
21855
|
-
declare function missingOAuthClientMessage(source: OAuthClientConfig['source']): string;
|
|
21893
|
+
export declare function getClientConfig(source?: OAuthClientConfig['source']): OAuthClientConfig | undefined;
|
|
21894
|
+
export declare function missingOAuthClientMessage(source: OAuthClientConfig['source']): string;
|
|
21856
21895
|
//#endregion
|
|
21857
21896
|
//#region packages/core/src/gsc/auth/loopback.d.ts
|
|
21858
|
-
declare function missingSharedClientLoginMessage(): string;
|
|
21859
|
-
declare function loginWithLoopback(clientConfig?: OAuthClientConfig | undefined): Promise<StoredTokens>;
|
|
21897
|
+
export declare function missingSharedClientLoginMessage(): string;
|
|
21898
|
+
export declare function loginWithLoopback(clientConfig?: OAuthClientConfig | undefined): Promise<StoredTokens>;
|
|
21860
21899
|
//#endregion
|
|
21861
21900
|
//#region packages/core/src/gsc/client/fetch.d.ts
|
|
21862
|
-
declare const LOCAL_SIGN_IN: {
|
|
21901
|
+
export declare const LOCAL_SIGN_IN: {
|
|
21863
21902
|
signIn: string;
|
|
21864
21903
|
};
|
|
21865
21904
|
//#endregion
|
|
21866
21905
|
//#region packages/core/src/commands-node.d.ts
|
|
21867
|
-
declare function nodeCommandDeps(options: {
|
|
21906
|
+
export declare function nodeCommandDeps(options: {
|
|
21868
21907
|
call: Caller;
|
|
21869
21908
|
account?: string;
|
|
21870
21909
|
refresh?: boolean;
|
|
21871
21910
|
}): CommandDeps;
|
|
21872
|
-
declare const LOCAL_BING_CONNECT = "Connect Bing on your seoskill.dev account and run `seo login`, or run `seo providers bing connect` with an API key from Bing Webmaster Tools (Settings, API access).";
|
|
21873
|
-
declare function localBing(): Promise<BingCall | null>;
|
|
21874
|
-
declare function localAccounts(): Promise<GoogleAccount[]>;
|
|
21875
|
-
declare function localResearchKeys(): Promise<Headers>;
|
|
21876
|
-
declare const TYPESAFE_API_KEY_ENV = "TYPESAFE_API_KEY";
|
|
21877
|
-
declare function localInternalLinksDependencies(options: {
|
|
21911
|
+
export declare const LOCAL_BING_CONNECT = "Connect Bing on your seoskill.dev account and run `seo login`, or run `seo providers bing connect` with an API key from Bing Webmaster Tools (Settings, API access).";
|
|
21912
|
+
export declare function localBing(): Promise<BingCall | null>;
|
|
21913
|
+
export declare function localAccounts(): Promise<GoogleAccount[]>;
|
|
21914
|
+
export declare function localResearchKeys(): Promise<Headers>;
|
|
21915
|
+
export declare const TYPESAFE_API_KEY_ENV = "TYPESAFE_API_KEY";
|
|
21916
|
+
export declare function localInternalLinksDependencies(options: {
|
|
21878
21917
|
site: string;
|
|
21879
21918
|
refresh?: boolean;
|
|
21880
21919
|
}): Promise<Pick<InternalLinksDependencies, 'searchConsole' | 'decisionModel'>>;
|
|
21881
|
-
declare function localRefreshClicky(): Promise<Headers | null>;
|
|
21882
|
-
declare function resolveLocalSite(site: string, options?: {
|
|
21920
|
+
export declare function localRefreshClicky(): Promise<Headers | null>;
|
|
21921
|
+
export declare function resolveLocalSite(site: string, options?: {
|
|
21883
21922
|
account?: string;
|
|
21884
21923
|
refresh?: boolean;
|
|
21885
21924
|
}): Promise<string>;
|
|
21886
|
-
declare function localError(error: unknown): unknown;
|
|
21887
|
-
declare function localGoogleFetch(account?: string): Promise<GoogleFetch>;
|
|
21925
|
+
export declare function localError(error: unknown): unknown;
|
|
21926
|
+
export declare function localGoogleFetch(account?: string): Promise<GoogleFetch>;
|
|
21888
21927
|
//#endregion
|
|
21889
21928
|
//#region packages/core/src/storage/sqlite.d.ts
|
|
21890
21929
|
type TransactionFunction = (...params: never[]) => unknown;
|
|
@@ -21913,20 +21952,20 @@ declare namespace SqliteDatabase {
|
|
|
21913
21952
|
}
|
|
21914
21953
|
//#endregion
|
|
21915
21954
|
//#region packages/core/src/storage/database.d.ts
|
|
21916
|
-
declare function ensurePrivateDatabaseFiles(path: string): void;
|
|
21917
|
-
declare function getDb(): SqliteDatabase.Database;
|
|
21918
|
-
declare function cacheDb(): SqliteDatabase.Database;
|
|
21919
|
-
declare function writeToCache(write: (database: SqliteDatabase.Database) => void): void;
|
|
21920
|
-
declare function noteCacheWrite(sizeBytes?: number, database?: SqliteDatabase.Database): void;
|
|
21921
|
-
declare function checkDatabaseReadiness(): {
|
|
21955
|
+
export declare function ensurePrivateDatabaseFiles(path: string): void;
|
|
21956
|
+
export declare function getDb(): SqliteDatabase.Database;
|
|
21957
|
+
export declare function cacheDb(): SqliteDatabase.Database;
|
|
21958
|
+
export declare function writeToCache(write: (database: SqliteDatabase.Database) => void): void;
|
|
21959
|
+
export declare function noteCacheWrite(sizeBytes?: number, database?: SqliteDatabase.Database): void;
|
|
21960
|
+
export declare function checkDatabaseReadiness(): {
|
|
21922
21961
|
dbPath: string;
|
|
21923
21962
|
};
|
|
21924
|
-
declare function hashKey(parts: unknown[]): string;
|
|
21925
|
-
declare function getCacheStats(): CacheStats;
|
|
21926
|
-
declare function clearCache(provider?: 'gsc' | 'google-analytics' | 'dataforseo' | 'ahrefs' | 'clicky' | 'http', olderThanMs?: number): number;
|
|
21963
|
+
export declare function hashKey(parts: unknown[]): string;
|
|
21964
|
+
export declare function getCacheStats(): CacheStats;
|
|
21965
|
+
export declare function clearCache(provider?: 'gsc' | 'google-analytics' | 'dataforseo' | 'ahrefs' | 'clicky' | 'http', olderThanMs?: number): number;
|
|
21927
21966
|
//#endregion
|
|
21928
21967
|
//#region packages/core/src/doctor.d.ts
|
|
21929
|
-
type DoctorCheck = {
|
|
21968
|
+
export type DoctorCheck = {
|
|
21930
21969
|
id: string;
|
|
21931
21970
|
label: string;
|
|
21932
21971
|
status: 'pass' | 'warn' | 'fail';
|
|
@@ -21936,24 +21975,24 @@ type DoctorCheck = {
|
|
|
21936
21975
|
type DoctorDependencies = {
|
|
21937
21976
|
checkDatabase?: typeof checkDatabaseReadiness;
|
|
21938
21977
|
};
|
|
21939
|
-
declare function runDoctor(dependencies?: DoctorDependencies): Promise<{
|
|
21978
|
+
export declare function runDoctor(dependencies?: DoctorDependencies): Promise<{
|
|
21940
21979
|
ok: boolean;
|
|
21941
21980
|
generatedAt: string;
|
|
21942
21981
|
checks: DoctorCheck[];
|
|
21943
21982
|
}>;
|
|
21944
21983
|
//#endregion
|
|
21945
21984
|
//#region packages/core/src/export/csv.d.ts
|
|
21946
|
-
type CsvValue = string | number | boolean | null | undefined;
|
|
21947
|
-
type CsvRow = Record<string, CsvValue>;
|
|
21948
|
-
type CsvFile = {
|
|
21985
|
+
export type CsvValue = string | number | boolean | null | undefined;
|
|
21986
|
+
export type CsvRow = Record<string, CsvValue>;
|
|
21987
|
+
export type CsvFile = {
|
|
21949
21988
|
filename: string;
|
|
21950
21989
|
headers?: string[];
|
|
21951
21990
|
rows: CsvRow[];
|
|
21952
21991
|
};
|
|
21953
|
-
declare function renderCsv(rows: CsvRow[], headers?: string[]): string;
|
|
21954
|
-
declare function quickWinsCsvRows(report: DiagnosePropertyReport['quickWins']): CsvRow[];
|
|
21955
|
-
declare function diagnoseCsvFiles(report: DiagnosePropertyReport): CsvFile[];
|
|
21956
|
-
declare function refreshPrioritiesCsvFiles(report: WorkflowReport<{
|
|
21992
|
+
export declare function renderCsv(rows: CsvRow[], headers?: string[]): string;
|
|
21993
|
+
export declare function quickWinsCsvRows(report: DiagnosePropertyReport['quickWins']): CsvRow[];
|
|
21994
|
+
export declare function diagnoseCsvFiles(report: DiagnosePropertyReport): CsvFile[];
|
|
21995
|
+
export declare function refreshPrioritiesCsvFiles(report: WorkflowReport<{
|
|
21957
21996
|
queue: PriorityQueueItem[];
|
|
21958
21997
|
warnings: string[];
|
|
21959
21998
|
diagnosis: DiagnosePropertyReport;
|
|
@@ -22037,52 +22076,52 @@ type SegmentItem = {
|
|
|
22037
22076
|
afterPosition: number | null;
|
|
22038
22077
|
positionDelta: number | null;
|
|
22039
22078
|
};
|
|
22040
|
-
declare function updatePostmortemCsvFiles(report: PostmortemCsvReport): CsvFile[];
|
|
22079
|
+
export declare function updatePostmortemCsvFiles(report: PostmortemCsvReport): CsvFile[];
|
|
22041
22080
|
//#endregion
|
|
22042
22081
|
//#region packages/core/src/ga4/matching.d.ts
|
|
22043
|
-
type Ga4WebStreamCandidate = {
|
|
22082
|
+
export type Ga4WebStreamCandidate = {
|
|
22044
22083
|
account: string;
|
|
22045
22084
|
property: string;
|
|
22046
22085
|
propertyName: string;
|
|
22047
22086
|
stream: Ga4DataStream;
|
|
22048
22087
|
};
|
|
22049
|
-
type Ga4WebStreamMatch = Ga4WebStreamCandidate & {
|
|
22088
|
+
export type Ga4WebStreamMatch = Ga4WebStreamCandidate & {
|
|
22050
22089
|
defaultUri: string;
|
|
22051
22090
|
hostname: string;
|
|
22052
22091
|
match: 'domain' | 'hostname';
|
|
22053
22092
|
};
|
|
22054
|
-
declare function matchGa4WebStreams(site: string, candidates: Ga4WebStreamCandidate[]): Ga4WebStreamMatch[];
|
|
22055
|
-
declare function ga4MatchReason(match: Ga4WebStreamMatch, site: string): string;
|
|
22093
|
+
export declare function matchGa4WebStreams(site: string, candidates: Ga4WebStreamCandidate[]): Ga4WebStreamMatch[];
|
|
22094
|
+
export declare function ga4MatchReason(match: Ga4WebStreamMatch, site: string): string;
|
|
22056
22095
|
//#endregion
|
|
22057
22096
|
//#region packages/core/src/gsc/dates.d.ts
|
|
22058
|
-
declare const GSC_TIME_ZONE = "America/Los_Angeles";
|
|
22059
|
-
declare const GSC_FINAL_DATA_LAG_DAYS = 4;
|
|
22060
|
-
declare function shiftIsoDate(date: string, days: number): string;
|
|
22061
|
-
declare function latestFinalGscDate(now?: Date): string;
|
|
22062
|
-
declare function finalGscDateRange(days?: number, now?: Date): {
|
|
22097
|
+
export declare const GSC_TIME_ZONE = "America/Los_Angeles";
|
|
22098
|
+
export declare const GSC_FINAL_DATA_LAG_DAYS = 4;
|
|
22099
|
+
export declare function shiftIsoDate(date: string, days: number): string;
|
|
22100
|
+
export declare function latestFinalGscDate(now?: Date): string;
|
|
22101
|
+
export declare function finalGscDateRange(days?: number, now?: Date): {
|
|
22063
22102
|
startDate: string;
|
|
22064
22103
|
endDate: string;
|
|
22065
22104
|
};
|
|
22066
22105
|
//#endregion
|
|
22067
22106
|
//#region packages/core/src/gsc/local-export.d.ts
|
|
22068
|
-
declare const DEFAULT_SEARCH_CONSOLE_EXPORT_ROW_LIMIT = 5000;
|
|
22069
|
-
declare const MAX_SEARCH_CONSOLE_EXPORT_ROW_LIMIT = 100000;
|
|
22070
|
-
declare const MAX_SEARCH_CONSOLE_EXPORT_FILES = 20;
|
|
22071
|
-
type SearchConsoleExportQueryRow = {
|
|
22107
|
+
export declare const DEFAULT_SEARCH_CONSOLE_EXPORT_ROW_LIMIT = 5000;
|
|
22108
|
+
export declare const MAX_SEARCH_CONSOLE_EXPORT_ROW_LIMIT = 100000;
|
|
22109
|
+
export declare const MAX_SEARCH_CONSOLE_EXPORT_FILES = 20;
|
|
22110
|
+
export type SearchConsoleExportQueryRow = {
|
|
22072
22111
|
query: string;
|
|
22073
22112
|
clicks: number;
|
|
22074
22113
|
impressions: number;
|
|
22075
22114
|
ctr: number | null;
|
|
22076
22115
|
position: number | null;
|
|
22077
22116
|
};
|
|
22078
|
-
type SearchConsoleExportPageRow = {
|
|
22117
|
+
export type SearchConsoleExportPageRow = {
|
|
22079
22118
|
url: string;
|
|
22080
22119
|
clicks: number;
|
|
22081
22120
|
impressions: number;
|
|
22082
22121
|
ctr: number | null;
|
|
22083
22122
|
position: number | null;
|
|
22084
22123
|
};
|
|
22085
|
-
type SearchConsoleExportFileImport = {
|
|
22124
|
+
export type SearchConsoleExportFileImport = {
|
|
22086
22125
|
path: string;
|
|
22087
22126
|
table: 'queries' | 'pages' | 'unrecognized';
|
|
22088
22127
|
sha256: string;
|
|
@@ -22100,7 +22139,7 @@ type SearchConsoleExportFileImport = {
|
|
|
22100
22139
|
rowLimit: number;
|
|
22101
22140
|
reason?: string;
|
|
22102
22141
|
};
|
|
22103
|
-
type SearchConsoleExportEvidence = {
|
|
22142
|
+
export type SearchConsoleExportEvidence = {
|
|
22104
22143
|
source: 'search-console-export';
|
|
22105
22144
|
exportedAt: string | null;
|
|
22106
22145
|
importedAt: string;
|
|
@@ -22118,7 +22157,7 @@ type SearchConsoleExportEvidence = {
|
|
|
22118
22157
|
warnings: string[];
|
|
22119
22158
|
caveats: string[];
|
|
22120
22159
|
};
|
|
22121
|
-
declare function loadSearchConsoleExport(input: {
|
|
22160
|
+
export declare function loadSearchConsoleExport(input: {
|
|
22122
22161
|
path: string;
|
|
22123
22162
|
rowLimit?: number;
|
|
22124
22163
|
now?: Date;
|
|
@@ -22126,8 +22165,8 @@ declare function loadSearchConsoleExport(input: {
|
|
|
22126
22165
|
}): Promise<SearchConsoleExportEvidence>;
|
|
22127
22166
|
//#endregion
|
|
22128
22167
|
//#region packages/core/src/gsc/local-export-reconcile.d.ts
|
|
22129
|
-
declare const DEFAULT_UNREACHED_PAGE_LIMIT = 100;
|
|
22130
|
-
type SearchConsoleExportReconciliation = {
|
|
22168
|
+
export declare const DEFAULT_UNREACHED_PAGE_LIMIT = 100;
|
|
22169
|
+
export type SearchConsoleExportReconciliation = {
|
|
22131
22170
|
joinBasis: 'path';
|
|
22132
22171
|
crawlOrigin: string;
|
|
22133
22172
|
exportOrigins: string[];
|
|
@@ -22137,7 +22176,7 @@ type SearchConsoleExportReconciliation = {
|
|
|
22137
22176
|
unreachedCount: number;
|
|
22138
22177
|
capped: boolean;
|
|
22139
22178
|
};
|
|
22140
|
-
declare function reconcileExportPagesWithCrawl(input: {
|
|
22179
|
+
export declare function reconcileExportPagesWithCrawl(input: {
|
|
22141
22180
|
pages: SearchConsoleExportPageRow[];
|
|
22142
22181
|
crawledUrls: string[];
|
|
22143
22182
|
crawlOrigin: string;
|
|
@@ -22145,24 +22184,24 @@ declare function reconcileExportPagesWithCrawl(input: {
|
|
|
22145
22184
|
}): SearchConsoleExportReconciliation;
|
|
22146
22185
|
//#endregion
|
|
22147
22186
|
//#region packages/core/src/gsc/property-url.d.ts
|
|
22148
|
-
declare function normalizeHttpUrl(value: string): string;
|
|
22149
|
-
declare function assertUrlMatchesGscProperty(property: string, value: string): string;
|
|
22187
|
+
export declare function normalizeHttpUrl(value: string): string;
|
|
22188
|
+
export declare function assertUrlMatchesGscProperty(property: string, value: string): string;
|
|
22150
22189
|
//#endregion
|
|
22151
22190
|
//#region packages/core/src/http/read-json.d.ts
|
|
22152
|
-
declare function readJson<T = unknown>(response: Response, label: string, options?: {
|
|
22191
|
+
export declare function readJson<T = unknown>(response: Response, label: string, options?: {
|
|
22153
22192
|
maxBytes?: number;
|
|
22154
22193
|
}): Promise<T>;
|
|
22155
|
-
declare function readJsonOrUndefined<T = unknown>(response: Response, label: string): Promise<T | undefined>;
|
|
22194
|
+
export declare function readJsonOrUndefined<T = unknown>(response: Response, label: string): Promise<T | undefined>;
|
|
22156
22195
|
//#endregion
|
|
22157
22196
|
//#region packages/core/src/logger.d.ts
|
|
22158
|
-
declare function createLogger(runId: string): pino.Logger;
|
|
22159
|
-
declare function makeRunId(): string;
|
|
22197
|
+
export declare function createLogger(runId: string): pino.Logger;
|
|
22198
|
+
export declare function makeRunId(): string;
|
|
22160
22199
|
//#endregion
|
|
22161
22200
|
//#region packages/core/src/markdown.d.ts
|
|
22162
|
-
declare function renderPresentationTablesMarkdown(tables: PresentationTable[]): string[];
|
|
22201
|
+
export declare function renderPresentationTablesMarkdown(tables: PresentationTable[]): string[];
|
|
22163
22202
|
//#endregion
|
|
22164
22203
|
//#region packages/core/src/paths.d.ts
|
|
22165
|
-
interface SeoCliPaths {
|
|
22204
|
+
export interface SeoCliPaths {
|
|
22166
22205
|
configDir: string;
|
|
22167
22206
|
cacheDir: string;
|
|
22168
22207
|
logDir: string;
|
|
@@ -22175,29 +22214,29 @@ interface SeoCliPaths {
|
|
|
22175
22214
|
telemetryStateFile: string;
|
|
22176
22215
|
cacheDbFile: string;
|
|
22177
22216
|
}
|
|
22178
|
-
type SeoCliPathOptions = {
|
|
22217
|
+
export type SeoCliPathOptions = {
|
|
22179
22218
|
env?: NodeJS.ProcessEnv;
|
|
22180
22219
|
home?: string;
|
|
22181
22220
|
platform?: NodeJS.Platform;
|
|
22182
22221
|
};
|
|
22183
|
-
declare function resolveSeoCliPaths(input?: SeoCliPathOptions): SeoCliPaths;
|
|
22184
|
-
declare function migrateLegacyMacConfig(input?: SeoCliPathOptions): void;
|
|
22185
|
-
declare function getSeoCliPaths(): SeoCliPaths;
|
|
22186
|
-
declare function ensureSeoCliDirs(): SeoCliPaths;
|
|
22187
|
-
declare function fileSize(path: string): number;
|
|
22222
|
+
export declare function resolveSeoCliPaths(input?: SeoCliPathOptions): SeoCliPaths;
|
|
22223
|
+
export declare function migrateLegacyMacConfig(input?: SeoCliPathOptions): void;
|
|
22224
|
+
export declare function getSeoCliPaths(): SeoCliPaths;
|
|
22225
|
+
export declare function ensureSeoCliDirs(): SeoCliPaths;
|
|
22226
|
+
export declare function fileSize(path: string): number;
|
|
22188
22227
|
//#endregion
|
|
22189
22228
|
//#region packages/core/src/phrasing.d.ts
|
|
22190
|
-
declare function plural(count: number, singular: string, pluralLabel?: string): string;
|
|
22191
|
-
declare function countLabel(count: number, singular: string, pluralLabel?: string): string;
|
|
22229
|
+
export declare function plural(count: number, singular: string, pluralLabel?: string): string;
|
|
22230
|
+
export declare function countLabel(count: number, singular: string, pluralLabel?: string): string;
|
|
22192
22231
|
//#endregion
|
|
22193
22232
|
//#region packages/core/src/provider-extensions/actions.d.ts
|
|
22194
|
-
type ProviderActionResult = {
|
|
22233
|
+
export type ProviderActionResult = {
|
|
22195
22234
|
provider: string;
|
|
22196
22235
|
action: string;
|
|
22197
22236
|
cache: 'hit' | 'miss' | 'bypass' | 'disabled';
|
|
22198
22237
|
data: unknown;
|
|
22199
22238
|
};
|
|
22200
|
-
declare function runProviderExtensionAction(input: {
|
|
22239
|
+
export declare function runProviderExtensionAction(input: {
|
|
22201
22240
|
providerId: string;
|
|
22202
22241
|
actionId: string;
|
|
22203
22242
|
account: Readonly<Record<string, string>>;
|
|
@@ -22208,29 +22247,29 @@ declare function runProviderExtensionAction(input: {
|
|
|
22208
22247
|
}): Promise<ProviderActionResult>;
|
|
22209
22248
|
//#endregion
|
|
22210
22249
|
//#region packages/core/src/provider-extensions/connections.d.ts
|
|
22211
|
-
declare function readProviderExtensionAccount(providerIdValue: string): Record<string, string>;
|
|
22212
|
-
declare function writeProviderExtensionAccount(providerIdValue: string, account: Readonly<Record<string, string>>): Record<string, string>;
|
|
22213
|
-
declare function deleteProviderExtensionAccount(providerIdValue: string): void;
|
|
22250
|
+
export declare function readProviderExtensionAccount(providerIdValue: string): Record<string, string>;
|
|
22251
|
+
export declare function writeProviderExtensionAccount(providerIdValue: string, account: Readonly<Record<string, string>>): Record<string, string>;
|
|
22252
|
+
export declare function deleteProviderExtensionAccount(providerIdValue: string): void;
|
|
22214
22253
|
//#endregion
|
|
22215
22254
|
//#region packages/core/src/provider-extensions/credentials.d.ts
|
|
22216
|
-
declare function readProviderExtensionCredentials(input: {
|
|
22255
|
+
export declare function readProviderExtensionCredentials(input: {
|
|
22217
22256
|
providerId: string;
|
|
22218
22257
|
account: Readonly<Record<string, string>>;
|
|
22219
22258
|
fields: readonly SeoProviderConnectionField[];
|
|
22220
22259
|
env?: NodeJS.ProcessEnv;
|
|
22221
22260
|
}): Promise<Record<string, string>>;
|
|
22222
|
-
declare function writeProviderExtensionCredentials(input: {
|
|
22261
|
+
export declare function writeProviderExtensionCredentials(input: {
|
|
22223
22262
|
providerId: string;
|
|
22224
22263
|
account: Readonly<Record<string, string>>;
|
|
22225
22264
|
credentials: Readonly<Record<string, string>>;
|
|
22226
22265
|
}): Promise<void>;
|
|
22227
|
-
declare function deleteProviderExtensionCredentials(input: {
|
|
22266
|
+
export declare function deleteProviderExtensionCredentials(input: {
|
|
22228
22267
|
providerId: string;
|
|
22229
22268
|
account: Readonly<Record<string, string>>;
|
|
22230
22269
|
}): Promise<void>;
|
|
22231
22270
|
//#endregion
|
|
22232
22271
|
//#region packages/core/src/provider-extensions/discovery.d.ts
|
|
22233
|
-
declare function listInstalledProviderExtensions(): Promise<{
|
|
22272
|
+
export declare function listInstalledProviderExtensions(): Promise<{
|
|
22234
22273
|
schemaVersion: 1;
|
|
22235
22274
|
installed: {
|
|
22236
22275
|
loadStatus: "failed" | "ready";
|
|
@@ -22243,7 +22282,7 @@ declare function listInstalledProviderExtensions(): Promise<{
|
|
|
22243
22282
|
installedAt: string;
|
|
22244
22283
|
}[];
|
|
22245
22284
|
}>;
|
|
22246
|
-
declare function describeInstalledProviderExtension(id: string): Promise<{
|
|
22285
|
+
export declare function describeInstalledProviderExtension(id: string): Promise<{
|
|
22247
22286
|
schemaVersion: 1;
|
|
22248
22287
|
id: string;
|
|
22249
22288
|
displayName: string;
|
|
@@ -22281,31 +22320,31 @@ declare const providerPackageReleaseSchema: z.ZodObject<{
|
|
|
22281
22320
|
repository: z.ZodOptional<z.ZodString>;
|
|
22282
22321
|
publisher: z.ZodOptional<z.ZodString>;
|
|
22283
22322
|
}, z.core.$strict>;
|
|
22284
|
-
type ProviderPackageRelease = z.infer<typeof providerPackageReleaseSchema>;
|
|
22285
|
-
type ProviderPackageCommandResult = {
|
|
22323
|
+
export type ProviderPackageRelease = z.infer<typeof providerPackageReleaseSchema>;
|
|
22324
|
+
export type ProviderPackageCommandResult = {
|
|
22286
22325
|
stdout: string;
|
|
22287
22326
|
stderr: string;
|
|
22288
22327
|
};
|
|
22289
|
-
type ProviderPackageCommand = (executable: string, args: readonly string[], options: {
|
|
22328
|
+
export type ProviderPackageCommand = (executable: string, args: readonly string[], options: {
|
|
22290
22329
|
cwd: string;
|
|
22291
22330
|
}) => Promise<ProviderPackageCommandResult>;
|
|
22292
|
-
type ProviderInstallerOptions = {
|
|
22331
|
+
export type ProviderInstallerOptions = {
|
|
22293
22332
|
packagesDir?: string;
|
|
22294
22333
|
now?: () => Date;
|
|
22295
22334
|
run?: ProviderPackageCommand;
|
|
22296
22335
|
};
|
|
22297
|
-
declare function inspectProviderPackage(value: string, options?: ProviderInstallerOptions): Promise<ProviderPackageRelease>;
|
|
22298
|
-
declare function installProviderPackage(input: ProviderPackageRelease, options?: ProviderInstallerOptions): Promise<InstalledProviderPackage>;
|
|
22299
|
-
declare function uninstallProviderExtension(id: string, options?: ProviderInstallerOptions): Promise<InstalledProviderPackage | undefined>;
|
|
22336
|
+
export declare function inspectProviderPackage(value: string, options?: ProviderInstallerOptions): Promise<ProviderPackageRelease>;
|
|
22337
|
+
export declare function installProviderPackage(input: ProviderPackageRelease, options?: ProviderInstallerOptions): Promise<InstalledProviderPackage>;
|
|
22338
|
+
export declare function uninstallProviderExtension(id: string, options?: ProviderInstallerOptions): Promise<InstalledProviderPackage | undefined>;
|
|
22300
22339
|
//#endregion
|
|
22301
22340
|
//#region packages/core/src/provider-extensions/store.d.ts
|
|
22302
|
-
declare function readInstalledProviderPackages(): InstalledProviderPackages;
|
|
22303
|
-
declare function writeInstalledProviderPackages(value: InstalledProviderPackages): InstalledProviderPackages;
|
|
22304
|
-
declare function saveInstalledProviderPackage(value: InstalledProviderPackage): InstalledProviderPackages;
|
|
22305
|
-
declare function removeInstalledProviderPackage(id: string): InstalledProviderPackage | undefined;
|
|
22341
|
+
export declare function readInstalledProviderPackages(): InstalledProviderPackages;
|
|
22342
|
+
export declare function writeInstalledProviderPackages(value: InstalledProviderPackages): InstalledProviderPackages;
|
|
22343
|
+
export declare function saveInstalledProviderPackage(value: InstalledProviderPackage): InstalledProviderPackages;
|
|
22344
|
+
export declare function removeInstalledProviderPackage(id: string): InstalledProviderPackage | undefined;
|
|
22306
22345
|
//#endregion
|
|
22307
22346
|
//#region packages/core/src/providers/ahrefs/client.d.ts
|
|
22308
|
-
type AhrefsLimitsAndUsage = {
|
|
22347
|
+
export type AhrefsLimitsAndUsage = {
|
|
22309
22348
|
provider: 'ahrefs';
|
|
22310
22349
|
apiVersion: 3;
|
|
22311
22350
|
subscription: string;
|
|
@@ -22324,7 +22363,7 @@ type AhrefsLimitsAndUsage = {
|
|
|
22324
22363
|
observedAt: string;
|
|
22325
22364
|
requestCostUnits: 0;
|
|
22326
22365
|
};
|
|
22327
|
-
type AhrefsClientOptions = {
|
|
22366
|
+
export type AhrefsClientOptions = {
|
|
22328
22367
|
apiKey?: string;
|
|
22329
22368
|
credentials?: () => string | undefined | Promise<string | undefined>;
|
|
22330
22369
|
fetch?: ProviderFetch;
|
|
@@ -22332,7 +22371,7 @@ type AhrefsClientOptions = {
|
|
|
22332
22371
|
timeoutMs?: number;
|
|
22333
22372
|
now?: () => Date;
|
|
22334
22373
|
};
|
|
22335
|
-
declare class AhrefsClient {
|
|
22374
|
+
export declare class AhrefsClient {
|
|
22336
22375
|
private readonly apiKey?;
|
|
22337
22376
|
private readonly credentials;
|
|
22338
22377
|
private readonly fetch;
|
|
@@ -22346,8 +22385,8 @@ declare class AhrefsClient {
|
|
|
22346
22385
|
}
|
|
22347
22386
|
//#endregion
|
|
22348
22387
|
//#region packages/core/src/providers/ahrefs/credentials.d.ts
|
|
22349
|
-
declare const AHREFS_API_KEY_ENV = "SEO_AHREFS_API_KEY";
|
|
22350
|
-
declare const AHREFS_API_KEY_SECRET: "ahrefs-api-key";
|
|
22388
|
+
export declare const AHREFS_API_KEY_ENV = "SEO_AHREFS_API_KEY";
|
|
22389
|
+
export declare const AHREFS_API_KEY_SECRET: "ahrefs-api-key";
|
|
22351
22390
|
declare const store: {
|
|
22352
22391
|
write(value: string): Promise<Exclude<ProviderSecretSource, "environment">>;
|
|
22353
22392
|
read(options?: {
|
|
@@ -22358,45 +22397,45 @@ declare const store: {
|
|
|
22358
22397
|
} | undefined>;
|
|
22359
22398
|
remove(): Promise<void>;
|
|
22360
22399
|
};
|
|
22361
|
-
type StoredAhrefsApiKey = NonNullable<Awaited<ReturnType<typeof store.read>>>;
|
|
22362
|
-
declare function writeAhrefsApiKey(value: string): Promise<"file" | "keychain">;
|
|
22363
|
-
declare function readAhrefsApiKey(input?: {
|
|
22400
|
+
export type StoredAhrefsApiKey = NonNullable<Awaited<ReturnType<typeof store.read>>>;
|
|
22401
|
+
export declare function writeAhrefsApiKey(value: string): Promise<"file" | "keychain">;
|
|
22402
|
+
export declare function readAhrefsApiKey(input?: {
|
|
22364
22403
|
env?: NodeJS.ProcessEnv;
|
|
22365
22404
|
}): Promise<{
|
|
22366
22405
|
apiKey: string;
|
|
22367
22406
|
source: ProviderSecretSource;
|
|
22368
22407
|
} | undefined>;
|
|
22369
|
-
declare function deleteAhrefsApiKey(): Promise<void>;
|
|
22408
|
+
export declare function deleteAhrefsApiKey(): Promise<void>;
|
|
22370
22409
|
//#endregion
|
|
22371
22410
|
//#region packages/core/src/providers/bing/credentials.d.ts
|
|
22372
|
-
declare const BING_API_KEY_ENV = "SEO_BING_API_KEY";
|
|
22373
|
-
declare const BING_API_KEY_SECRET: "bing-api-key";
|
|
22374
|
-
declare function writeBingApiKey(value: string): Promise<"file" | "keychain">;
|
|
22375
|
-
declare function readBingApiKey(input?: {
|
|
22411
|
+
export declare const BING_API_KEY_ENV = "SEO_BING_API_KEY";
|
|
22412
|
+
export declare const BING_API_KEY_SECRET: "bing-api-key";
|
|
22413
|
+
export declare function writeBingApiKey(value: string): Promise<"file" | "keychain">;
|
|
22414
|
+
export declare function readBingApiKey(input?: {
|
|
22376
22415
|
env?: NodeJS.ProcessEnv;
|
|
22377
22416
|
}): Promise<{
|
|
22378
22417
|
apiKey: string;
|
|
22379
22418
|
source: ProviderSecretSource;
|
|
22380
22419
|
} | undefined>;
|
|
22381
|
-
declare function deleteBingApiKey(): Promise<void>;
|
|
22420
|
+
export declare function deleteBingApiKey(): Promise<void>;
|
|
22382
22421
|
//#endregion
|
|
22383
22422
|
//#region packages/core/src/providers/dataforseo/credentials.d.ts
|
|
22384
|
-
declare const DATAFORSEO_LOGIN_ENV = "SEO_DATAFORSEO_LOGIN";
|
|
22385
|
-
declare const DATAFORSEO_PASSWORD_ENV = "SEO_DATAFORSEO_PASSWORD";
|
|
22386
|
-
declare const DATAFORSEO_CREDENTIAL_SECRET: "dataforseo-credentials";
|
|
22387
|
-
type DataForSeoCredentials = {
|
|
22423
|
+
export declare const DATAFORSEO_LOGIN_ENV = "SEO_DATAFORSEO_LOGIN";
|
|
22424
|
+
export declare const DATAFORSEO_PASSWORD_ENV = "SEO_DATAFORSEO_PASSWORD";
|
|
22425
|
+
export declare const DATAFORSEO_CREDENTIAL_SECRET: "dataforseo-credentials";
|
|
22426
|
+
export type DataForSeoCredentials = {
|
|
22388
22427
|
login: string;
|
|
22389
22428
|
password: string;
|
|
22390
22429
|
};
|
|
22391
|
-
type StoredDataForSeoCredentials = DataForSeoCredentials & {
|
|
22430
|
+
export type StoredDataForSeoCredentials = DataForSeoCredentials & {
|
|
22392
22431
|
source: ProviderSecretSource;
|
|
22393
22432
|
migrated: boolean;
|
|
22394
22433
|
};
|
|
22395
|
-
declare function writeDataForSeoCredentials(credentials: DataForSeoCredentials): Promise<Exclude<ProviderSecretSource, 'environment'>>;
|
|
22396
|
-
declare function readDataForSeoCredentials(input?: {
|
|
22434
|
+
export declare function writeDataForSeoCredentials(credentials: DataForSeoCredentials): Promise<Exclude<ProviderSecretSource, 'environment'>>;
|
|
22435
|
+
export declare function readDataForSeoCredentials(input?: {
|
|
22397
22436
|
env?: NodeJS.ProcessEnv;
|
|
22398
22437
|
}): Promise<StoredDataForSeoCredentials | undefined>;
|
|
22399
|
-
declare function deleteDataForSeoCredentials(): Promise<void>;
|
|
22438
|
+
export declare function deleteDataForSeoCredentials(): Promise<void>;
|
|
22400
22439
|
//#endregion
|
|
22401
22440
|
//#region packages/core/src/providers/dataforseo/client-types.d.ts
|
|
22402
22441
|
type DataForSeoAccountSnapshot = {
|
|
@@ -22420,7 +22459,7 @@ type DataForSeoClientOptions = {
|
|
|
22420
22459
|
};
|
|
22421
22460
|
//#endregion
|
|
22422
22461
|
//#region packages/core/src/providers/dataforseo/client.d.ts
|
|
22423
|
-
declare class DataForSeoClient {
|
|
22462
|
+
export declare class DataForSeoClient {
|
|
22424
22463
|
private readonly fetch;
|
|
22425
22464
|
private readonly credentials;
|
|
22426
22465
|
private readonly baseUrl;
|
|
@@ -22435,8 +22474,8 @@ declare class DataForSeoClient {
|
|
|
22435
22474
|
}
|
|
22436
22475
|
//#endregion
|
|
22437
22476
|
//#region packages/core/src/providers/errors.d.ts
|
|
22438
|
-
type ProviderErrorCode = 'configuration' | 'authentication' | 'rate-limit' | 'timeout' | 'response-too-large' | 'invalid-response' | 'remote-error';
|
|
22439
|
-
declare class ProviderError extends Error {
|
|
22477
|
+
export type ProviderErrorCode = 'configuration' | 'authentication' | 'rate-limit' | 'timeout' | 'response-too-large' | 'invalid-response' | 'remote-error';
|
|
22478
|
+
export declare class ProviderError extends Error {
|
|
22440
22479
|
readonly provider: ExternalServiceId;
|
|
22441
22480
|
readonly operation: string;
|
|
22442
22481
|
readonly code: ProviderErrorCode;
|
|
@@ -22455,52 +22494,52 @@ declare class ProviderError extends Error {
|
|
|
22455
22494
|
}
|
|
22456
22495
|
//#endregion
|
|
22457
22496
|
//#region packages/core/src/robots-directives.d.ts
|
|
22458
|
-
type RobotsDirective = 'noindex' | 'nofollow' | 'nosnippet';
|
|
22459
|
-
type SnippetControlEvidence = {
|
|
22497
|
+
export type RobotsDirective = 'noindex' | 'nofollow' | 'nosnippet';
|
|
22498
|
+
export type SnippetControlEvidence = {
|
|
22460
22499
|
source: 'meta-robots' | 'x-robots-tag';
|
|
22461
22500
|
directive: 'nosnippet' | 'max-snippet';
|
|
22462
22501
|
raw: string;
|
|
22463
22502
|
value?: number;
|
|
22464
22503
|
};
|
|
22465
|
-
type EffectiveSnippetControl = {
|
|
22504
|
+
export type EffectiveSnippetControl = {
|
|
22466
22505
|
status: 'not-restricted' | 'limited' | 'blocked';
|
|
22467
22506
|
reason: 'no-restrictive-directive' | 'max-snippet-limit' | 'max-snippet-zero' | 'nosnippet';
|
|
22468
22507
|
maxCharacters?: number;
|
|
22469
22508
|
evidence: SnippetControlEvidence[];
|
|
22470
22509
|
};
|
|
22471
|
-
declare function combineRobotsValues(value: Array<string | undefined>): string | undefined;
|
|
22472
|
-
declare function metaRobotsDirectives(value?: string | string[]): Set<RobotsDirective>;
|
|
22473
|
-
declare function xRobotsDirectives(value?: string | string[], userAgent?: string): Set<RobotsDirective>;
|
|
22474
|
-
declare function hasMetaRobotsDirective(value: string | string[] | undefined, directive: RobotsDirective): boolean;
|
|
22475
|
-
declare function hasXRobotsDirective(value: string | string[] | undefined, directive: RobotsDirective): boolean;
|
|
22476
|
-
declare function effectiveRobotsDirectives(input: {
|
|
22510
|
+
export declare function combineRobotsValues(value: Array<string | undefined>): string | undefined;
|
|
22511
|
+
export declare function metaRobotsDirectives(value?: string | string[]): Set<RobotsDirective>;
|
|
22512
|
+
export declare function xRobotsDirectives(value?: string | string[], userAgent?: string): Set<RobotsDirective>;
|
|
22513
|
+
export declare function hasMetaRobotsDirective(value: string | string[] | undefined, directive: RobotsDirective): boolean;
|
|
22514
|
+
export declare function hasXRobotsDirective(value: string | string[] | undefined, directive: RobotsDirective): boolean;
|
|
22515
|
+
export declare function effectiveRobotsDirectives(input: {
|
|
22477
22516
|
metaRobots?: string | string[];
|
|
22478
22517
|
xRobotsTag?: string | string[];
|
|
22479
22518
|
}): Set<RobotsDirective>;
|
|
22480
|
-
declare function effectiveSnippetControl(input: {
|
|
22519
|
+
export declare function effectiveSnippetControl(input: {
|
|
22481
22520
|
metaRobots?: string | string[];
|
|
22482
22521
|
xRobotsTag?: string | string[];
|
|
22483
22522
|
}): EffectiveSnippetControl;
|
|
22484
22523
|
//#endregion
|
|
22485
22524
|
//#region packages/core/src/runtime/interfaces.d.ts
|
|
22486
|
-
interface CredentialsProvider {
|
|
22525
|
+
export interface CredentialsProvider {
|
|
22487
22526
|
getGoogleOAuthClient(): OAuthClientConfig | undefined;
|
|
22488
22527
|
readGoogleTokens(): Promise<StoredTokens | undefined>;
|
|
22489
22528
|
writeGoogleTokens(tokens: StoredTokens): Promise<void>;
|
|
22490
22529
|
deleteGoogleTokens(): Promise<void>;
|
|
22491
22530
|
}
|
|
22492
|
-
interface StorageAdapter {
|
|
22531
|
+
export interface StorageAdapter {
|
|
22493
22532
|
get<T = unknown>(key: string): Promise<T | undefined>;
|
|
22494
22533
|
put<T = unknown>(key: string, value: T): Promise<void>;
|
|
22495
22534
|
delete(key: string): Promise<void>;
|
|
22496
22535
|
}
|
|
22497
|
-
declare class LocalCredentialsProvider implements CredentialsProvider {
|
|
22536
|
+
export declare class LocalCredentialsProvider implements CredentialsProvider {
|
|
22498
22537
|
getGoogleOAuthClient(): OAuthClientConfig | undefined;
|
|
22499
22538
|
readGoogleTokens(): Promise<StoredTokens | undefined>;
|
|
22500
22539
|
writeGoogleTokens(tokens: StoredTokens): Promise<void>;
|
|
22501
22540
|
deleteGoogleTokens(): Promise<void>;
|
|
22502
22541
|
}
|
|
22503
|
-
declare class JsonFileStorageAdapter implements StorageAdapter {
|
|
22542
|
+
export declare class JsonFileStorageAdapter implements StorageAdapter {
|
|
22504
22543
|
private readonly filePath;
|
|
22505
22544
|
constructor(filePath: string);
|
|
22506
22545
|
get<T = unknown>(key: string): Promise<T | undefined>;
|
|
@@ -22509,10 +22548,10 @@ declare class JsonFileStorageAdapter implements StorageAdapter {
|
|
|
22509
22548
|
private readAll;
|
|
22510
22549
|
private writeAll;
|
|
22511
22550
|
}
|
|
22512
|
-
declare const localCredentialsProvider: LocalCredentialsProvider;
|
|
22551
|
+
export declare const localCredentialsProvider: LocalCredentialsProvider;
|
|
22513
22552
|
//#endregion
|
|
22514
22553
|
//#region packages/core/src/storage/ledger.d.ts
|
|
22515
|
-
declare class SessionLedger {
|
|
22554
|
+
export declare class SessionLedger {
|
|
22516
22555
|
private readonly entries;
|
|
22517
22556
|
private gscCalls;
|
|
22518
22557
|
private gscRows;
|
|
@@ -22522,15 +22561,15 @@ declare class SessionLedger {
|
|
|
22522
22561
|
}
|
|
22523
22562
|
//#endregion
|
|
22524
22563
|
//#region packages/core/src/storage/log-retention.d.ts
|
|
22525
|
-
declare const LOG_MAX_FILE_BYTES: number;
|
|
22526
|
-
declare const LOG_MAX_TOTAL_BYTES: number;
|
|
22527
|
-
declare const LOG_MAX_AGE_MS: number;
|
|
22528
|
-
type LogPruneResult = {
|
|
22564
|
+
export declare const LOG_MAX_FILE_BYTES: number;
|
|
22565
|
+
export declare const LOG_MAX_TOTAL_BYTES: number;
|
|
22566
|
+
export declare const LOG_MAX_AGE_MS: number;
|
|
22567
|
+
export type LogPruneResult = {
|
|
22529
22568
|
rotated: number;
|
|
22530
22569
|
removed: number;
|
|
22531
22570
|
sizeBytes: number;
|
|
22532
22571
|
};
|
|
22533
|
-
declare function pruneLogs(options?: {
|
|
22572
|
+
export declare function pruneLogs(options?: {
|
|
22534
22573
|
directory?: string;
|
|
22535
22574
|
now?: number;
|
|
22536
22575
|
maxFileBytes?: number;
|
|
@@ -22539,13 +22578,13 @@ declare function pruneLogs(options?: {
|
|
|
22539
22578
|
}): LogPruneResult;
|
|
22540
22579
|
//#endregion
|
|
22541
22580
|
//#region packages/core/src/storage/reset.d.ts
|
|
22542
|
-
declare function resetSeoData(): Promise<void>;
|
|
22581
|
+
export declare function resetSeoData(): Promise<void>;
|
|
22543
22582
|
//#endregion
|
|
22544
22583
|
//#region packages/core/src/telemetry-failures.d.ts
|
|
22545
|
-
declare const TELEMETRY_ERROR_CATEGORIES: readonly ["auth", "crawl_timeout", "network", "config", "data", "database", "filesystem", "internal", "unknown"];
|
|
22546
|
-
declare const TELEMETRY_FAILURE_REASONS: readonly ["access_denied", "auth_config_required", "auth_expired", "auth_required", "crawl_timeout", "database_constraint", "database_corrupt", "database_locked", "database_read_only", "database_unique_constraint", "filesystem_full", "filesystem_not_found", "filesystem_permission", "insufficient_data", "internal_error", "invalid_input", "network_connection", "network_dns", "network_timeout", "network_tls", "optional_provider_unavailable", "property_not_found", "provider_unavailable", "rate_limited", "unknown"];
|
|
22547
|
-
declare const TELEMETRY_FAILURE_CONTEXTS: readonly ["crawl_pages_run_id_url"];
|
|
22548
|
-
declare const TELEMETRY_OPERATIONS: readonly ["analytics", "auth", "cache", "change-log", "client", "content", "content-groups", "crawl-reports", "diagnose", "export", "gsc-query", "indexnow", "init", "llms", "logs", "mcp", "monitoring", "okf", "perf", "privacy", "project", "projects", "providers", "pseo", "reports", "reset", "schedule", "server-logs", "setup", "skill", "sites", "start", "telemetry", "tests", "updates", "url-inspect"];
|
|
22584
|
+
export declare const TELEMETRY_ERROR_CATEGORIES: readonly ["auth", "crawl_timeout", "network", "config", "data", "database", "filesystem", "internal", "unknown"];
|
|
22585
|
+
export declare const TELEMETRY_FAILURE_REASONS: readonly ["access_denied", "auth_config_required", "auth_expired", "auth_required", "crawl_timeout", "database_constraint", "database_corrupt", "database_locked", "database_read_only", "database_unique_constraint", "filesystem_full", "filesystem_not_found", "filesystem_permission", "insufficient_data", "internal_error", "invalid_input", "network_connection", "network_dns", "network_timeout", "network_tls", "optional_provider_unavailable", "property_not_found", "provider_unavailable", "rate_limited", "unknown"];
|
|
22586
|
+
export declare const TELEMETRY_FAILURE_CONTEXTS: readonly ["crawl_pages_run_id_url"];
|
|
22587
|
+
export declare const TELEMETRY_OPERATIONS: readonly ["analytics", "auth", "cache", "change-log", "client", "content", "content-groups", "crawl-reports", "diagnose", "export", "gsc-query", "indexnow", "init", "llms", "logs", "mcp", "monitoring", "okf", "perf", "privacy", "project", "projects", "providers", "pseo", "reports", "reset", "schedule", "server-logs", "setup", "skill", "sites", "start", "telemetry", "tests", "updates", "url-inspect"];
|
|
22549
22588
|
type TelemetryErrorCategory = (typeof TELEMETRY_ERROR_CATEGORIES)[number];
|
|
22550
22589
|
type TelemetryFailureReason = (typeof TELEMETRY_FAILURE_REASONS)[number];
|
|
22551
22590
|
type TelemetryFailureContext = (typeof TELEMETRY_FAILURE_CONTEXTS)[number];
|
|
@@ -22555,29 +22594,29 @@ type TelemetryFailureClassification = {
|
|
|
22555
22594
|
failureReason: TelemetryFailureReason;
|
|
22556
22595
|
failureContext?: TelemetryFailureContext;
|
|
22557
22596
|
};
|
|
22558
|
-
declare function classifyTelemetryFailure(error: unknown): TelemetryFailureClassification;
|
|
22559
|
-
declare function isTelemetryOperation(value: unknown): value is TelemetryOperation;
|
|
22597
|
+
export declare function classifyTelemetryFailure(error: unknown): TelemetryFailureClassification;
|
|
22598
|
+
export declare function isTelemetryOperation(value: unknown): value is TelemetryOperation;
|
|
22560
22599
|
//#endregion
|
|
22561
22600
|
//#region packages/core/src/telemetry-shared.d.ts
|
|
22562
|
-
declare const TELEMETRY_ENDPOINT = "https://seoskill.dev/api/t";
|
|
22563
|
-
declare const TELEMETRY_SCHEMA_VERSION = 2;
|
|
22564
|
-
declare function isoWeek(date: Date): string;
|
|
22601
|
+
export declare const TELEMETRY_ENDPOINT = "https://seoskill.dev/api/t";
|
|
22602
|
+
export declare const TELEMETRY_SCHEMA_VERSION = 2;
|
|
22603
|
+
export declare function isoWeek(date: Date): string;
|
|
22565
22604
|
//#endregion
|
|
22566
22605
|
//#region packages/core/src/telemetry.d.ts
|
|
22567
|
-
declare const TELEMETRY_TIMEOUT_MS = 2000;
|
|
22568
|
-
declare const TELEMETRY_EVENTS: readonly ["first_run", "setup_complete", "audit_start", "audit_complete", "audit_failed", "command_failed", "first_audit_complete", "active_d1", "active_d7", "active_d30"];
|
|
22569
|
-
declare const TELEMETRY_AGENTS: readonly ["claude-code", "cursor", "codex", "cli", "unknown"];
|
|
22570
|
-
declare const TELEMETRY_REPORTS: readonly ["affected-urls", "ai-referrals", "audit-page", "audit-urls", "cannibalisation", "compare-crawls", "content-optimization", "crawl-diff", "site-crawl", "ctr-underperformers", "decaying-pages", "setup-check", "explain-crawl-issue", "crawl-report", "index-coverage", "index-coverage-plan", "index-monitor", "index-watch", "internal-links", "keyword-metrics", "link-evidence", "link-recovery", "crawl-history", "crawler-rules", "measure-change", "page-opportunities", "performance-audit", "query-clusters", "quick-wins", "ranked-keywords", "redirect-trace", "second-page", "segment-impact", "serp-results", "serp-competitors", "striking-distance", "top-fixes", "traffic-anomaly", "update-correlation", "search-performance-overview", "refresh-priorities", "technical-watch", "update-postmortem"];
|
|
22571
|
-
type TelemetryEvent = (typeof TELEMETRY_EVENTS)[number];
|
|
22572
|
-
type TelemetryAgent = (typeof TELEMETRY_AGENTS)[number];
|
|
22573
|
-
type TelemetryReport = (typeof TELEMETRY_REPORTS)[number];
|
|
22574
|
-
type TelemetryState = {
|
|
22606
|
+
export declare const TELEMETRY_TIMEOUT_MS = 2000;
|
|
22607
|
+
export declare const TELEMETRY_EVENTS: readonly ["first_run", "setup_complete", "audit_start", "audit_complete", "audit_failed", "command_failed", "first_audit_complete", "active_d1", "active_d7", "active_d30"];
|
|
22608
|
+
export declare const TELEMETRY_AGENTS: readonly ["claude-code", "cursor", "codex", "cli", "unknown"];
|
|
22609
|
+
export declare const TELEMETRY_REPORTS: readonly ["affected-urls", "ai-referrals", "audit-page", "audit-urls", "cannibalisation", "compare-crawls", "content-optimization", "crawl-diff", "site-crawl", "ctr-underperformers", "decaying-pages", "setup-check", "explain-crawl-issue", "crawl-report", "index-coverage", "index-coverage-plan", "index-monitor", "index-watch", "internal-links", "keyword-metrics", "link-evidence", "link-recovery", "crawl-history", "crawler-rules", "measure-change", "page-opportunities", "performance-audit", "query-clusters", "quick-wins", "ranked-keywords", "redirect-trace", "second-page", "segment-impact", "serp-results", "serp-competitors", "striking-distance", "top-fixes", "traffic-anomaly", "update-correlation", "search-performance-overview", "refresh-priorities", "technical-watch", "update-postmortem"];
|
|
22610
|
+
export type TelemetryEvent = (typeof TELEMETRY_EVENTS)[number];
|
|
22611
|
+
export type TelemetryAgent = (typeof TELEMETRY_AGENTS)[number];
|
|
22612
|
+
export type TelemetryReport = (typeof TELEMETRY_REPORTS)[number];
|
|
22613
|
+
export type TelemetryState = {
|
|
22575
22614
|
telemetryEnabled: boolean;
|
|
22576
22615
|
firstRunAt: string;
|
|
22577
22616
|
cohort: string;
|
|
22578
22617
|
sentMilestones: TelemetryMilestone[];
|
|
22579
22618
|
};
|
|
22580
|
-
type TelemetryPayload = {
|
|
22619
|
+
export type TelemetryPayload = {
|
|
22581
22620
|
event: TelemetryEvent;
|
|
22582
22621
|
version: string;
|
|
22583
22622
|
agent: TelemetryAgent;
|
|
@@ -22594,7 +22633,7 @@ type TelemetryPayload = {
|
|
|
22594
22633
|
};
|
|
22595
22634
|
type TelemetryMilestone = 'first_run' | 'setup_complete' | 'first_audit_complete' | 'active_d1' | 'active_d7' | 'active_d30';
|
|
22596
22635
|
type TelemetryFetch = (input: string | URL | Request, init?: RequestInit) => Promise<Response>;
|
|
22597
|
-
type TelemetryOptions = {
|
|
22636
|
+
export type TelemetryOptions = {
|
|
22598
22637
|
agent?: TelemetryAgent;
|
|
22599
22638
|
clientName?: string;
|
|
22600
22639
|
endpoint?: string;
|
|
@@ -22608,39 +22647,39 @@ type TelemetryOptions = {
|
|
|
22608
22647
|
stateFile?: string;
|
|
22609
22648
|
version?: string;
|
|
22610
22649
|
};
|
|
22611
|
-
type TelemetryDisableReason = 'ci' | 'do_not_track' | 'environment' | 'local_setting' | 'invalid_state';
|
|
22612
|
-
type TelemetryStatus = {
|
|
22650
|
+
export type TelemetryDisableReason = 'ci' | 'do_not_track' | 'environment' | 'local_setting' | 'invalid_state';
|
|
22651
|
+
export type TelemetryStatus = {
|
|
22613
22652
|
enabled: boolean;
|
|
22614
22653
|
reason?: TelemetryDisableReason;
|
|
22615
22654
|
stateFile: string;
|
|
22616
22655
|
state?: TelemetryState;
|
|
22617
22656
|
};
|
|
22618
|
-
declare const TELEMETRY_NOTICE = "SEO Skill collects anonymous usage data to improve the tool (event name,\nfixed report or command name, fixed failure classification, version, agent,\nOS, architecture, Node major, and install week; never URLs, report data, error\nmessages, command arguments, or identifiers of any kind).\nDocs: https://seoskill.dev/telemetry\nDisable: seo telemetry disable (or set DO_NOT_TRACK=1)\n";
|
|
22619
|
-
declare function isTelemetryCi(env?: NodeJS.ProcessEnv): boolean;
|
|
22620
|
-
declare function isTelemetryReport(value: unknown): value is TelemetryReport;
|
|
22621
|
-
declare function detectTelemetryAgent(input?: {
|
|
22657
|
+
export declare const TELEMETRY_NOTICE = "SEO Skill collects anonymous usage data to improve the tool (event name,\nfixed report or command name, fixed failure classification, version, agent,\nOS, architecture, Node major, and install week; never URLs, report data, error\nmessages, command arguments, or identifiers of any kind).\nDocs: https://seoskill.dev/telemetry\nDisable: seo telemetry disable (or set DO_NOT_TRACK=1)\n";
|
|
22658
|
+
export declare function isTelemetryCi(env?: NodeJS.ProcessEnv): boolean;
|
|
22659
|
+
export declare function isTelemetryReport(value: unknown): value is TelemetryReport;
|
|
22660
|
+
export declare function detectTelemetryAgent(input?: {
|
|
22622
22661
|
clientName?: string;
|
|
22623
22662
|
env?: NodeJS.ProcessEnv;
|
|
22624
22663
|
}): TelemetryAgent;
|
|
22625
|
-
declare function buildTelemetryPayload(event: TelemetryEvent, state: TelemetryState, fields?: {
|
|
22664
|
+
export declare function buildTelemetryPayload(event: TelemetryEvent, state: TelemetryState, fields?: {
|
|
22626
22665
|
errorCategory?: TelemetryErrorCategory;
|
|
22627
22666
|
failureReason?: TelemetryFailureReason;
|
|
22628
22667
|
failureContext?: TelemetryFailureContext;
|
|
22629
22668
|
operation?: TelemetryOperation;
|
|
22630
22669
|
report?: TelemetryReport;
|
|
22631
22670
|
}, options?: TelemetryOptions): TelemetryPayload;
|
|
22632
|
-
declare function getTelemetryStatus(options?: TelemetryOptions): TelemetryStatus;
|
|
22633
|
-
declare function setTelemetryEnabled(enabled: boolean, options?: TelemetryOptions): TelemetryStatus;
|
|
22634
|
-
declare function initializeTelemetry(options?: TelemetryOptions): TelemetryStatus;
|
|
22635
|
-
declare function trackTelemetryReportStart(report: string, options?: TelemetryOptions): void;
|
|
22636
|
-
declare function trackTelemetryReportComplete(report: string, options?: TelemetryOptions): void;
|
|
22637
|
-
declare function trackTelemetryReportFailed(report: string, error: unknown, options?: TelemetryOptions): void;
|
|
22638
|
-
declare function trackTelemetryCommandFailed(operation: string, error: unknown, options?: TelemetryOptions): void;
|
|
22639
|
-
declare function trackTelemetrySetupComplete(options?: TelemetryOptions): void;
|
|
22640
|
-
declare function telemetryErrorCategory(error: unknown): TelemetryErrorCategory;
|
|
22671
|
+
export declare function getTelemetryStatus(options?: TelemetryOptions): TelemetryStatus;
|
|
22672
|
+
export declare function setTelemetryEnabled(enabled: boolean, options?: TelemetryOptions): TelemetryStatus;
|
|
22673
|
+
export declare function initializeTelemetry(options?: TelemetryOptions): TelemetryStatus;
|
|
22674
|
+
export declare function trackTelemetryReportStart(report: string, options?: TelemetryOptions): void;
|
|
22675
|
+
export declare function trackTelemetryReportComplete(report: string, options?: TelemetryOptions): void;
|
|
22676
|
+
export declare function trackTelemetryReportFailed(report: string, error: unknown, options?: TelemetryOptions): void;
|
|
22677
|
+
export declare function trackTelemetryCommandFailed(operation: string, error: unknown, options?: TelemetryOptions): void;
|
|
22678
|
+
export declare function trackTelemetrySetupComplete(options?: TelemetryOptions): void;
|
|
22679
|
+
export declare function telemetryErrorCategory(error: unknown): TelemetryErrorCategory;
|
|
22641
22680
|
//#endregion
|
|
22642
22681
|
//#region packages/core/src/update-notice.d.ts
|
|
22643
|
-
type UpdateNoticeOptions = {
|
|
22682
|
+
export type UpdateNoticeOptions = {
|
|
22644
22683
|
argv?: string[];
|
|
22645
22684
|
cacheFile?: string;
|
|
22646
22685
|
cliPath?: string;
|
|
@@ -22648,24 +22687,24 @@ type UpdateNoticeOptions = {
|
|
|
22648
22687
|
now?: Date;
|
|
22649
22688
|
version?: string;
|
|
22650
22689
|
};
|
|
22651
|
-
declare function isNewerVersion(current: string, latest: string): boolean;
|
|
22652
|
-
declare function updateNotice(options?: UpdateNoticeOptions): string | undefined;
|
|
22690
|
+
export declare function isNewerVersion(current: string, latest: string): boolean;
|
|
22691
|
+
export declare function updateNotice(options?: UpdateNoticeOptions): string | undefined;
|
|
22653
22692
|
//#endregion
|
|
22654
22693
|
//#region packages/core/src/updates/search-status.d.ts
|
|
22655
|
-
declare const INCIDENTS_URL = "https://status.search.google.com/incidents.json";
|
|
22656
|
-
declare function fetchSearchStatusIncidents(): Promise<SearchStatusIncident[]>;
|
|
22657
|
-
declare function listSearchUpdates(input?: {
|
|
22694
|
+
export declare const INCIDENTS_URL = "https://status.search.google.com/incidents.json";
|
|
22695
|
+
export declare function fetchSearchStatusIncidents(): Promise<SearchStatusIncident[]>;
|
|
22696
|
+
export declare function listSearchUpdates(input?: {
|
|
22658
22697
|
product?: string;
|
|
22659
22698
|
limit?: number;
|
|
22660
22699
|
}): Promise<SearchUpdate[]>;
|
|
22661
22700
|
//#endregion
|
|
22662
22701
|
//#region packages/core/src/utils/time.d.ts
|
|
22663
|
-
declare function parseOlderThan(input?: string): number | undefined;
|
|
22664
|
-
declare function formatRelativeExpiry(expiresAt: number): string;
|
|
22665
|
-
declare function isoDate(daysAgo?: number): string;
|
|
22702
|
+
export declare function parseOlderThan(input?: string): number | undefined;
|
|
22703
|
+
export declare function formatRelativeExpiry(expiresAt: number): string;
|
|
22704
|
+
export declare function isoDate(daysAgo?: number): string;
|
|
22666
22705
|
//#endregion
|
|
22667
22706
|
//#region packages/core/src/version.d.ts
|
|
22668
|
-
declare const SEO_VERSION: string;
|
|
22707
|
+
export declare const SEO_VERSION: string;
|
|
22669
22708
|
//#endregion
|
|
22670
|
-
export { AHREFS_API_KEY_ENV, AHREFS_API_KEY_SECRET, AI_REFERRAL_SOURCES, AI_REFERRAL_SOURCES_VERSION, ANALYTICS_PROVIDER_IDS, AUDIT_PAGE_RULE_IDS, AccessBlockEvidence, AgentFinding, AgentFindingStatus, AgentFindings, AgentFixFinding, AgentReportInventory, AgentReportOptions, AgentReviewFinding, AhrefsClient, AhrefsClientOptions, AhrefsLimitsAndUsage, type AiReferralDataSource, type AiReferralMetrics, type AiReferralQueryEvidence, type AiReferralReport, type AiReferralSourceDefinition, AnalyticsConnection, AnalyticsProvider, AnalyticsProviderDetails, AnalyticsProviderRuntimeOptions, type AnalyzeCannibalImportRowsInput, type AnalyzeCannibalRowsInput, type AnalyzeDecayInput, type AnalyzeQuickWinsInput, type AnalyzeSecondPageInput, type AnalyzeStrikingDistanceInput, AppConfig, AuditPageDependencies, AuditPageReport, AuthorizedGoogleClient, BING_API_KEY_ENV, BING_API_KEY_SECRET, BROWSER_USER_AGENT, BoundedSitemapInventory, BrandTermCandidate, CANNIBAL_MAXIMUM_DOMINANT_SHARE, CANNIBAL_MINIMUM_PAGE_SHARE, CLICKY_SITEKEY_ENV, CLICKY_SITE_KEYS_SECRET, CLOUD_SIGN_IN, CLOUD_URL, CRAWL_SKIP_REASONS, CTR_DEFAULT_LIMIT, CTR_MAX_LIMIT, CTR_MAX_MIN_IMPRESSIONS, CacheStats, type CannibalAnalysis, CannibalDependencies, type CannibalImportAnalysis, CannibalImportDependencies, type CannibalImportItem, type CannibalImportPage, type CannibalImportReport, CannibalImportReportInput, type CannibalImportSelection, type CannibalItem, type CannibalPage, type CannibalReport, CannibalReportInput, CannibalSearchConsoleInput, type CannibalSelection, type CannibalSuppression, type CannibalSuppressionReason, CloudCredentials, ContentExtractionDiagnostics, ContentExtractor, ContentOptimizationIntent, ContentOptimizationReport, CoverageField, CrawlAccessSummary, type CrawlAiAvailability, type CrawlAiBotAccess, type CrawlAiLinkCheck, type CrawlAiResourceSignal, type CrawlAiSignals, CrawlAnalyticsDataSource, CrawlConfig, CrawlConfigInput, CrawlDataSourceStatus, CrawlDataSourceWindow, CrawlExternalLinkVerification, CrawlFetchRateConfig, CrawlImplementationQueueInput, CrawlImplementationQueueItem, CrawlImplementationQueueOutput, CrawlIssue, CrawlIssueGroup, CrawlLinkGraph, CrawlMode, CrawlOneResult, CrawlOutputFormat, CrawlPageSnapshot, CrawlReport, CrawlReportDataSources, CrawlReportSummary, CrawlRequestObservation, CrawlResponseObservation, CrawlRunStats, CrawlSearchDataSource, type CrawlSiteChecks, type CrawlSiteDependencies, CrawlSitemapDiscovery, CrawlSkipImpact, CrawlSkipReason, CrawlSkipReasonCount, CrawlSkippedUrlsByImpact, CrawlStatusEvent, CrawlStatusHandler, type CrawlStatusPhase, CrawlStrategy, CrawlerIdentity, CredentialsProvider, CreditUsage, CsvFile, CsvRow, CsvValue, type CtrUnderperformer, CtrUnderperformerDependencies, type CtrUnderperformerSelection, CtrUnderperformersInput, CtrUnderperformersReport, DATAFORSEO_CREDENTIAL_SECRET, DATAFORSEO_LOGIN_ENV, DATAFORSEO_PASSWORD_ENV, DEFAULT_MAX_PAGES, DEFAULT_SEARCH_CONSOLE_EXPORT_ROW_LIMIT, DEFAULT_UNREACHED_PAGE_LIMIT, type DataForSeoAccountSnapshot, DataForSeoClient, type DataForSeoClientOptions, DataForSeoCredentials, type DecayAnalysis, type DecayComparison, type DecayDiagnosis, type DecayGroup, type DecayItem, type DecayMetrics, type DecayReport, type DecaySelection, type DecaySignal, DecayingDependencies, DecayingReportInput, DecisionAnswer, DecisionErrorKind, DecisionModel, DecisionModelError, DecisionQuestion, DecisionRequest, DecisionResponse, DecisionRunner, DecisionUsage, DiagnosePropertyDependencies, DiagnosePropertyReport, DiagnosisDataStatus, DiagnosisPriority, DoctorCheck, EffectiveSnippetControl, ExternalLinkCheck, ExternalLinkCheckAttempt, ExternalLinkCheckState, ExternalServiceId, ExtractedLinkLocation, ExtractedPage, FetchPageDependencies, type FetchPageOptions, type FetchRateControls, GSC_FINAL_DATA_LAG_DAYS, GSC_TIME_ZONE, type Ga4AccountSummary, Ga4DataStream, type Ga4PropertySummary, Ga4ReportRequest, Ga4RunReportResult, Ga4WebStreamCandidate, Ga4WebStreamMatch, type GoogleAccessTokenClient, GoogleApiError, GoogleCallOptions, GoogleFetch, GoogleRichResultAssessment, GoogleRichResultAssessmentSelection, GoogleRichResultAssessmentStatus, GscRow, HttpProfile, INCIDENTS_URL, IndexCoverageBoundedSection, IndexCoverageCandidateItem, IndexCoverageControlReason, IndexCoverageControlledItem, IndexCoverageCrawlInput, IndexCoverageInput, IndexCoverageInventoryItem, IndexCoverageReport, IndexCoverageReportDependencies, IndexCoverageReportInput, IndexCoverageSearchConsoleInput, IndexCoverageSearchVisibilityItem, IndexCoverageSignalsReport, IndexCoverageSitemapInput, IndexCoverageSourceCompleteness, IndexCoverageSourceEvidence, IndexCoverageSourceMembership, IndexCoverageTemplateReview, InstalledProviderPackage, InstalledProviderPackages, type InternalLinkSuggestion, InternalLinksDependencies, InternalLinksInput, type InternalLinksPage, type InternalLinksReport, type JavaScriptRenderingInput, type JavaScriptRenderingMode, JsonFileStorageAdapter, KeywordMetric, KeywordMonthlySearch, LINK_ROLES, LOCAL_BING_CONNECT, LOCAL_SIGN_IN, LOG_MAX_AGE_MS, LOG_MAX_FILE_BYTES, LOG_MAX_TOTAL_BYTES, LighthouseFailureCode, LinkRecoverItem, LinkRecoverReport, LoadedProviderExtensions, LocalCredentialsProvider, LogPruneResult, MANAGED_PROVIDER_SECRET_NAMES, MAX_CRAWL_CONCURRENCY, MAX_CRAWL_DEPTH, MAX_CRAWL_PAGES, MAX_CRAWL_TIMEOUT_MS, MAX_MAX_PAGES, MAX_SEARCH_CONSOLE_EXPORT_FILES, MAX_SEARCH_CONSOLE_EXPORT_ROW_LIMIT, NarrativeSection, type OAuthClientConfig, OpportunityBenchmarkRow, PAGE_TYPES, PROVIDER_SECRET_NAMES, PageExtractor, PageFetchDiagnostics, PageFetchResult, PageFetcher, type PageOpportunityAnalysis, type PageOpportunityAnalysisInput, type PageOpportunityBenchmark, PageOpportunityInput, type PageOpportunityItem, PageOpportunityReport, type PageOpportunitySelection, type PageOpportunityType, type PageOpportunityVerification, type PageRenderer, PageSearchMetrics, PageTopQuery, PartialDiagnosisReason, PerformanceAuditReport, PerformanceFieldData, PerformanceFieldMetric, PerformanceMetric, PerformanceRating, PositionBenchmark, Presentation, PresentationChart, PresentationScalar, PresentationTable, PresentationTableColumn, PriorityQueueItem, ProgressReporter, ProviderActionResult, ProviderCapability, ProviderError, ProviderErrorCode, ProviderExtensionLoadFailure, ProviderExtensionLoaderOptions, ProviderExtensionRegistry, ProviderFetch, ProviderId, ProviderImportEvidence, ProviderInstallerOptions, ProviderPackageCommand, ProviderPackageCommandResult, ProviderPackageManifest, ProviderPackageRelease, ProviderRequestInput, ProviderRuntimeOptions, ProviderSecret, ProviderSecretSource, ProviderValue, ProviderWarning, QueryCluster, type QueryClusterPage, QueryClusterReport, type QueryClusterRow, QueryClusterSourceRow, QueryContentClassification, QueryContentCoverage, QueryContentSignal, QueryContentVerifier, QueryFieldCoverage, type QuickWinAnalysis, type QuickWinGroup, type QuickWinItem, type QuickWinSelection, type QuickWinTemplateRecommendation, QuickWinsDependencies, QuickWinsInput, QuickWinsReport, RESEARCH_IMPORT_COLUMN_KEYS, Recommendation, RedirectTraceIssue, RedirectTraceReport, RedirectTraceStep, RegisteredProviderExtension, RenderingDocumentDifference, RenderingDocumentField, RenderingDocumentSnapshot, ReportNarrative, ResearchImportColumn, ResearchImportColumns, ResponseSizeLimitError, RobotsDirective, RuleCategory, RuleId, RuleInfo, RuleRecommendation, RuleSeverity, SEARCH_INTENTS, SEO_CRAWLER_IDENTITY, SEO_CRAWLER_TOKEN, SEO_CRAWLER_USER_AGENT, SEO_PROVIDER_API_VERSION, SEO_VERSION, SERP_TITLE_REFERENCE_WIDTH_PX, SERP_TITLE_WIDTH_PROFILE, STEP_CHANGE_RULES, SearchAnalyticsOptions, SearchAnalyticsQuery, SearchAnalyticsRequest, SearchAnalyticsResult, SearchConsoleExportEvidence, SearchConsoleExportFileImport, SearchConsoleExportPageRow, SearchConsoleExportQueryRow, SearchConsoleExportReconciliation, SearchConsoleSite, SearchDateWindow, SearchPageBatch, type SearchStatusIncident, type SearchUpdate, type SecondPageAnalysis, SecondPageDependencies, SecondPageInput, type SecondPageItem, type SecondPageQuery, type SecondPageRecommendation, type SecondPageReport, type SecondPageSelection, type SegmentDimension, SegmentImpactDependencies, SegmentImpactInput, type SegmentImpactItem, type SegmentImpactReport, type SegmentImpactSelection, type SegmentPeriodEvidence, type SegmentRange, SeoAnalyticsConnection, SeoAnalyticsLandingPageResult, SeoCliPathOptions, SeoCliPaths, SeoError, SeoErrorCode, SeoLandingPageVisitRow, SeoLandingPageVisitsCapability, SeoLandingPageVisitsResult, SeoProviderActionAdapter, SeoProviderActivate, SeoProviderApiVersion, SeoProviderCapabilityAdapter, SeoProviderCapabilityId, SeoProviderConnection, SeoProviderConnectionAdapter, SeoProviderConnectionField, SeoProviderHost, SeoProviderJson, SeoProviderJsonSchema, SeoProviderKind, SeoProviderRegistration, SeoProviderRequest, SeoProviderRuntime, SeoSearchMarket, SeoSerpLocalPackResult, SeoSerpOrganicResult, SeoSerpSnapshotCapability, SeoSerpSnapshotResult, ServiceAccountAccessTokenClient, ServiceAccountConfig, ServiceAccountStatus, SessionLedger, SitemapDocument, SitemapFetchResult, SitemapInvalidLoc, SitemapLastmodObservation, SkippedDiagnosisSection, SnippetControlEvidence, StorageAdapter, StoredAhrefsApiKey, StoredClickySiteKey, StoredDataForSeoCredentials, StoredTokenStore, StoredTokens, type StrikingDistanceAnalysis, type StrikingDistanceAnalysisGroup, type StrikingDistanceAnalysisItem, StrikingDistanceDependencies, StrikingDistanceInput, StrikingDistanceItem, StrikingDistanceReport, TELEMETRY_AGENTS, TELEMETRY_ENDPOINT, TELEMETRY_ERROR_CATEGORIES, TELEMETRY_EVENTS, TELEMETRY_FAILURE_CONTEXTS, TELEMETRY_FAILURE_REASONS, TELEMETRY_NOTICE, TELEMETRY_OPERATIONS, TELEMETRY_REPORTS, TELEMETRY_SCHEMA_VERSION, TELEMETRY_TIMEOUT_MS, TYPESAFE_API_KEY_ENV, TelemetryAgent, TelemetryDisableReason, type TelemetryErrorCategory, TelemetryEvent, type TelemetryFailureClassification, type TelemetryFailureContext, type TelemetryFailureReason, type TelemetryOperation, TelemetryOptions, TelemetryPayload, TelemetryReport, TelemetryState, TelemetryStatus, TemplateAwareReport, TitleWidthEstimate, TokenStorageMode, TokenStorageStatus, TopFix, TopFixFilters, TrafficAnomaly, TrafficAnomalyCoverage, TrafficAnomalyDependencies, TrafficAnomalyDetection, TrafficAnomalyInput, TrafficAnomalyReport, TrafficAnomalySelection, type UnmatchedSegment, UpdateConfounder, UpdateCorrelationReport, UpdateNoticeOptions, UrlInspectionRequest, UrlInspectionResult, VerifyQueryContentInput, WorkflowAction, WorkflowReport, WorkflowStep, agentActionsView, aiReferralSourceForValue, aiReferralsReport, analyticsConnectionLabel, analyticsConnectionProviderId, analyticsConnectionSchema, analyticsProviderDetails, analyticsProviderSchema, analyzeAiReferralRows, analyzeCannibalImportRows, analyzeCannibalRows, analyzeCtrUnderperformersFromRows, analyzeDecay, analyzeIndexCoverageSignals, analyzePageOpportunitiesFromRows, analyzeQueryClustersFromRows, analyzeQuickWinsFromRows, analyzeSecondPageRows, analyzeSegmentRows, analyzeStrikingDistanceRows, analyzeTrafficAnomalyRows, assertCrawlConfigLimits, assertUrlMatchesGscProperty, auditCrawlPages, auditCrawlRequests, auditPage, authStatus, bearerFetch, boundedSitemapInventory, buildAgentFindings, buildQueryClusterReportFromRows, buildTelemetryPayload, cacheDb, cannibalImportReport, cannibalReport, cannibalReportWith, changeWindow, checkDatabaseReadiness, classifyTelemetryFailure, clearCache, cloudAccountFor, cloudBing, cloudCredentials, cloudGoogleEmails, cloudGoogleToken, cloudKeys, cloudLinked, cloudLogout, clusterQueryRows, combineRobotsValues, compareSegmentRows, configSchema, contentCoverageRecommendation, contentCoverageType, contentOptimizationFromPageOpportunities, contentOptimizationReport, countLabel, crawlConfigHash, crawlConfigSchema, crawlDefinitionId, crawlFixToQueueItem, crawlImplementationQueueWorkflow, crawlIssueGroupSchema, crawlIssueSchema, crawlOne, crawlPageSnapshotSchema, crawlReportSchema, crawlReportSummarySchema, crawlRequestObservationSchema, crawlRunId, crawlSite, crawlSkipImpact, crawlSkipReasonCountsFromRecord, crawlStatusOnly, crawlTopFixSchema, crawlerJsonSchemas, crawlerRuleCategorySchema, crawlerRuleIdSchema, crawlerRuleInfoSchema, crawlerRuleRecommendationSchema, crawlerRuleSeveritySchema, crawlerSchemas, createAuthorizedClient, createCrawlReport, createCtrBenchmarkContext, createGoogleAccessTokenClient, createLogger, createPageRenderer, ctrUnderperformersReport, ctrUnderperformersReportWith, decayClusterDrafts, decayComparisonRange, decayingReport, decayingReportWith, deleteAhrefsApiKey, deleteBingApiKey, deleteClickySiteKey, deleteDataForSeoCredentials, deleteManagedProviderSecrets, deleteProviderExtensionAccount, deleteProviderExtensionCredentials, deleteProviderSecret, deleteTokens, deriveBrandTerms, describeInstalledProviderExtension, detectBrandTerms, detectTelemetryAgent, diagnoseCsvFiles, diagnoseProperty, diagnosePropertyWorkflow, effectiveRobotsDirectives, effectiveSnippetControl, ensurePrivateDatabaseFiles, ensureSeoCliDirs, estimateSerpTitleWidth, expectedCtrForPosition, explainRule, fetchCruxFieldData, fetchPage, fetchPageStatus, fetchSearchStatusIncidents, fetchSitemapUrls, fileSize, finalGscDateRange, findOverlappingSearchUpdates, finishCloudLogin, formatRelativeExpiry, ga4MatchReason, ga4PropertyIdFromName, ga4ReportQualityWarnings, ga4RequestCanUseCache, ga4RowsToObjects, getAuthModeStatus, getCacheStats, getClientConfig, getDb, getPrivacySnapshot, getSeoCliPaths, getServiceAccountConfig, getServiceAccountStatus, getTelemetryStatus, getTokenStorageStatus, googleJson, groupCrawlIssues, hasMetaRobotsDirective, hasRule, hasXRobotsDirective, hashKey, indexCoverageSignals, inferTemplateMovement, initializeTelemetry, inspectProviderPackage, inspectSearchConsoleUrl, inspectUrl, installProviderPackage, installedProviderPackageSchema, installedProviderPackagesSchema, internalLinksReport, interpretUpdateCorrelation, isBrandQuery, isNewerVersion, isSkippableReportError, isTelemetryCi, isTelemetryOperation, isTelemetryReport, isoDate, isoWeek, latestFinalGscDate, linkRecover, linkRecoverRecommendation, listAnalyticsAccounts, listAnalyticsDataStreams, listGa4AccountSummaries, listGa4DataStreams, listGoogleAccounts, listInstalledProviderExtensions, listRules, listSearchConsoleSites, listSearchUpdates, listSites, loadInstalledProviderExtensions, loadProviderExtensions, loadProviderPackage, loadSearchConsoleExport, localAccounts, localBing, localCredentialsProvider, localError, localGoogleFetch, localInternalLinksDependencies, localRefreshClicky, localResearchKeys, loginWithLoopback, makeRunId, matchGa4WebStreams, measureCoverage, metaRobotsDirectives, migrateLegacyMacConfig, missingOAuthClientMessage, missingSharedClientLoginMessage, nodeCommandDeps, normalizeBrandText, normalizeClickySiteId, normalizeClickySiteKey, normalizeCrawlConfig, normalizeCrawlSkipReasonCounts, normalizeForCoverage, normalizeHttpUrl, normalizeJavaScriptRenderingMode, normalizeLoadedCrawlReport, normalizeProviderExtensionAccount, normalizedResearchColumnName, notSignedIn, noteCacheWrite, openCloudLink, pageEvidenceRecommendation, pageOpportunitiesReport, parseOlderThan, pendingCloudLogin, performanceAudit, performanceReportIsCacheable, plural, providerCapabilitySchema, providerConnectionFieldSchema, providerExactVersionSchema, providerExtensionIdSchema, providerIdSchema, providerIntegritySchema, providerKindSchema, providerPackageManifestSchema, providerPackageNameSchema, providerPreferenceSchema, providerRegistrationSchema, providerRequestJson, providerRequestText, pruneLogs, publicHttpFetch, queryClusterReport, queryClusterTokens, queryContentCoverageFromPage, queryContentFieldsFromPage, queryFieldCoverage, queryOpportunityRecommendation, queryPageMetrics, queryPageTopQuery, queryPagesMetrics, queryPagesMetricsBatch, queryPagesTopQueries, queryPagesTopQueriesBatch, querySearchAnalytics, quickWinsCsvRows, quickWinsReport, quickWinsReportWith, readAhrefsApiKey, readAllTokens, readBingApiKey, readBoundedResponseText, readClickySiteKey, readClickySiteKeys, readConfig, readDataForSeoCredentials, readInstalledProviderPackages, readJson, readJsonOrUndefined, readOauthClient, readProviderExtensionAccount, readProviderExtensionCredentials, readProviderSecret, readTokens, recommendationForRule, reconcileExportPagesWithCrawl, redirectTrace, refreshAuthToken, refreshPrioritiesCsvFiles, refreshPrioritiesWorkflow, registrableDomain, removeInstalledProviderPackage, renderCrawlCsv, renderCrawlHtml, renderCrawlJunit, renderCrawlMarkdownTickets, renderCrawlPagesCsv, renderCrawlPretty, renderCsv, renderPresentationTablesMarkdown, renderWorkflowMarkdown, reportNarrative, requestHeaders, requirePageVerification, researchImportColumns, resetSeoData, resolveLocalSite, resolveSegmentRanges, resolveSeoCliPaths, reviewObservations, roundedPosition, runAnalyticsProviderLandingPages, runAnalyticsReport, runDoctor, runGa4Report, runProviderExtensionAction, runtimeForProvider, safeProviderAdapterError, saveInstalledProviderPackage, searchAnalyticsRows, searchUpdatesFromIncidents, secondPage, secondPageWith, segmentComparisonRange, segmentImpact, segmentRangeDays, seoErrorEnvelope, sessionSourceInListFilter, setActiveGoogleAccount, setTelemetryEnabled, setTokenStorageMode, shiftIsoDate, shouldExcludeBrandQuery, siteStartUrl, startCloudLogin, strikingDistance, strikingDistanceWith, summarizeCrawlReport, pageTechnicalSignals as technicalPageSignals, telemetryErrorCategory, toSeoError, tokenSchema, tokenStoreSchema, topFixes, trackTelemetryCommandFailed, trackTelemetryReportComplete, trackTelemetryReportFailed, trackTelemetryReportStart, trackTelemetrySetupComplete, trafficAnomaly, trafficAnomalyWith, typesafeDecisionModel, unavailableSegmentImpactReport, unicodeTokens, uninstallProviderExtension, updateCorrelation, updateNotice, updatePostmortemCsvFiles, updatePostmortemWorkflow, urlInspectionQuota, validateResearchImportColumnSources, verifyAnalyticsProvider, verifyProviderExtension, verifyQueryContent, verifyQueryContentWith, withAgentReportContract, withRankingHistory, workflowPresentation, writeAhrefsApiKey, writeBingApiKey, writeClickySiteKey, writeConfig, writeDataForSeoCredentials, writeInstalledProviderPackages, writeOauthClient, writeProviderExtensionAccount, writeProviderExtensionCredentials, writeProviderSecret, writeToCache, writeTokens, xRobotsDirectives };
|
|
22709
|
+
export { type AiReferralDataSource, type AiReferralMetrics, type AiReferralQueryEvidence, type AiReferralReport, type AiReferralSourceDefinition, type AnalyzeCannibalImportRowsInput, type AnalyzeCannibalRowsInput, type AnalyzeDecayInput, type AnalyzeQuickWinsInput, type AnalyzeSecondPageInput, type AnalyzeStrikingDistanceInput, type CannibalAnalysis, type CannibalImportAnalysis, type CannibalImportItem, type CannibalImportPage, type CannibalImportReport, type CannibalImportSelection, type CannibalItem, type CannibalPage, type CannibalReport, type CannibalSelection, type CannibalSuppression, type CannibalSuppressionReason, type CrawlAiAvailability, type CrawlAiBotAccess, type CrawlAiLinkCheck, type CrawlAiResourceSignal, type CrawlAiSignals, type CrawlSiteChecks, type CrawlSiteDependencies, type CrawlStatusPhase, type CtrUnderperformer, type CtrUnderperformerSelection, type DataForSeoAccountSnapshot, type DataForSeoClientOptions, type DecayAnalysis, type DecayComparison, type DecayDiagnosis, type DecayGroup, type DecayItem, type DecayMetrics, type DecayReport, type DecaySelection, type DecaySignal, type FetchPageOptions, type FetchRateControls, type Ga4AccountSummary, type Ga4PropertySummary, type GoogleAccessTokenClient, type InternalLinkSuggestion, type InternalLinksPage, type InternalLinksReport, type JavaScriptRenderingInput, type JavaScriptRenderingMode, type OAuthClientConfig, type PageOpportunityAnalysis, type PageOpportunityAnalysisInput, type PageOpportunityBenchmark, type PageOpportunityItem, type PageOpportunitySelection, type PageOpportunityType, type PageOpportunityVerification, type PageRenderer, type QueryClusterPage, type QueryClusterRow, type QuickWinAnalysis, type QuickWinGroup, type QuickWinItem, type QuickWinSelection, type QuickWinTemplateRecommendation, SEO_PROVIDER_API_VERSION, type SearchStatusIncident, type SearchUpdate, type SecondPageAnalysis, type SecondPageItem, type SecondPageQuery, type SecondPageRecommendation, type SecondPageReport, type SecondPageSelection, type SegmentDimension, type SegmentImpactItem, type SegmentImpactReport, type SegmentImpactSelection, type SegmentPeriodEvidence, type SegmentRange, SeoAnalyticsConnection, SeoAnalyticsLandingPageResult, SeoLandingPageVisitRow, SeoLandingPageVisitsCapability, SeoLandingPageVisitsResult, SeoProviderActionAdapter, SeoProviderActivate, SeoProviderApiVersion, SeoProviderCapabilityAdapter, SeoProviderCapabilityId, SeoProviderConnection, SeoProviderConnectionAdapter, SeoProviderConnectionField, SeoProviderHost, SeoProviderJson, SeoProviderJsonSchema, SeoProviderKind, SeoProviderRegistration, SeoProviderRequest, SeoProviderRuntime, SeoSearchMarket, SeoSerpLocalPackResult, SeoSerpOrganicResult, SeoSerpSnapshotCapability, SeoSerpSnapshotResult, type StrikingDistanceAnalysis, type StrikingDistanceAnalysisGroup, type StrikingDistanceAnalysisItem, type TelemetryErrorCategory, type TelemetryFailureClassification, type TelemetryFailureContext, type TelemetryFailureReason, type TelemetryOperation, type UnmatchedSegment, pageTechnicalSignals as technicalPageSignals };
|
|
22671
22710
|
//# sourceMappingURL=index.d.ts.map
|