@gscdump/sdk 1.3.2 → 1.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  import { AnalysisSourcesOptions, SearchTypeOptions, SourceRangeOptions } from "./hosted-query.mjs";
2
- import { HostedClientOptions, HostedFetch, HostedFetchOptions, HostedHeaders } from "./_chunks/request.mjs";
2
+ import { HostedClientOptions, HostedFetch, HostedFetchOptions, HostedHeaders } from "./request.mjs";
3
3
  import { AnalysisSourcesResponse, BackfillRange, BackfillResponse, BulkFileResolutionRequest, BulkFileResolutionResponse, CountriesResponse, IndexingDiagnostics, IndexingDiagnosticsParams, IndexingInspectRateLimited, IndexingInspectRequest, IndexingInspectResponse, IndexingUrlStatus, IndexingUrlsResponse, InspectionHistoryResponse, InspectionIndex, QueryDimSourceResponse, RollupEnvelope, SearchAppearanceResponse, SiteListItem, SitemapChangesResponse, SitemapHistoryResponse, SitemapIndex, SourceInfoOptions, SourceInfoResponse, WhoamiResponse } from "@gscdump/contracts";
4
4
  type AnalyticsFetch = HostedFetch;
5
5
  type AnalyticsHeaders = HostedHeaders;
@@ -1,5 +1,5 @@
1
1
  import { indexingDiagnosticsQuery, indexingUrlsQuery, sourceInfoQuery, tablesQuery, withDefaultSearchType } from "./hosted-query.mjs";
2
- import { createHostedRequester } from "./_chunks/request.mjs";
2
+ import { createHostedRequester } from "./request.mjs";
3
3
  import { analyticsEndpoints } from "@gscdump/contracts/analytics";
4
4
  function createAnalyticsClient(options = {}) {
5
5
  const { request, shouldValidate } = createHostedRequester(options, { apiBase: "" });
package/dist/client.d.mts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { AnalysisSourcesOptions, SearchTypeOptions, SourceRangeOptions } from "./hosted-query.mjs";
2
- import { HostedClientOptions, HostedFetch, HostedFetchOptions, HostedHeaders } from "./_chunks/request.mjs";
2
+ import { HostedClientOptions, HostedFetch, HostedFetchOptions, HostedHeaders } from "./request.mjs";
3
3
  import { AddPartnerTeamMemberParams, BindPartnerSiteTeamParams, BindPartnerTeamCatalogParams, BindPartnerTeamCatalogResponse, BuilderStateWire, BulkRegisterPartnerSitesParams, BulkRegisterPartnerSitesResponse, CreatePartnerTeamParams, DataDetailOptions, DataQueryOptions, DeletePartnerUserResponse, GscAddAndVerifyResponse, GscVerificationRequest, GscVerificationTokenResponse, GscdumpAnalysisSourcesResponse, GscdumpAvailableSite, GscdumpCanonicalMismatchesResponse, GscdumpDataDetailResponse, GscdumpDataResponse, GscdumpIndexPercentResponse, GscdumpIndexingDiagnosticsResponse, GscdumpIndexingResponse, GscdumpIndexingUrlsResponse, GscdumpKeywordSparklinesParams, GscdumpKeywordSparklinesResponse, GscdumpPageTrendParams, GscdumpPageTrendResponse, GscdumpPermissionRecovery, GscdumpQueryTrendParams, GscdumpQueryTrendResponse, GscdumpSiteIntIdCrosswalkResponse, GscdumpSiteRegistration, GscdumpSitemapChangesResponse, GscdumpSitemapMembershipParams, GscdumpSitemapMembershipResponse, GscdumpSitemapsResponse, GscdumpSyncStatusResponse, GscdumpTeamCatalogRef, GscdumpTeamMemberRow, GscdumpTeamRow, GscdumpTopAssociationParams, GscdumpTopAssociationResponse, GscdumpUserRegistration, GscdumpUserSettings, GscdumpUserSite, GscdumpUserStatus, GscdumpUserTokenUpdate, IndexingDiagnosticsParams, IndexingInspectRateLimited, IndexingInspectRequest, IndexingInspectResponse, IndexingUrlsParams, PartnerLifecycleResponse, PartnerSitemapAction, PartnerSitemapActionResponse, RegisterPartnerSiteParams, RegisterPartnerUserParams, UpdatePartnerUserTokensParams } from "@gscdump/contracts";
4
4
  type PartnerFetch = HostedFetch;
5
5
  type PartnerHeaders = HostedHeaders;
package/dist/client.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import { dataDetailQuery, dataQuery, indexingDiagnosticsQuery, indexingUrlsQuery, pageTrendQuery, queryTrendQuery, tablesQuery } from "./hosted-query.mjs";
2
2
  import { PartnerApiError, partnerErrorToException } from "./errors.mjs";
3
- import { createHostedRequester } from "./_chunks/request.mjs";
3
+ import { createHostedRequester } from "./request.mjs";
4
4
  import { findLifecycleSite, lifecycleSiteToSyncStatus } from "./lifecycle.mjs";
5
5
  import { err, ok, unwrapResult } from "gscdump/result";
6
6
  import { partnerEndpoints } from "@gscdump/contracts/partner";
package/dist/errors.d.mts CHANGED
@@ -1,2 +1,22 @@
1
- import { PartnerApiError, PartnerErrorInfo, PartnerErrorKind, partnerErrorToException, toPartnerError } from "./_chunks/errors.mjs";
1
+ type PartnerErrorKind = 'auth' | 'rate-limit' | 'provisioning' | 'permission' | 'network' | 'validation' | 'not-found' | 'server' | 'unknown';
2
+ interface PartnerErrorInfo {
3
+ kind: PartnerErrorKind;
4
+ statusCode?: number;
5
+ message: string;
6
+ data?: unknown;
7
+ }
8
+ declare class PartnerApiError extends Error {
9
+ readonly kind: PartnerErrorKind;
10
+ readonly statusCode?: number;
11
+ readonly data?: unknown;
12
+ constructor(info: PartnerErrorInfo);
13
+ }
14
+ declare function toPartnerError(error: unknown): PartnerApiError;
15
+ /**
16
+ * Re-raise a modelled `PartnerApiError` as itself. The error variant of every
17
+ * `*Result` core already IS the throwable `PartnerApiError`, so the throwing
18
+ * wrappers preserve the exact identity/message existing call sites and tests
19
+ * assert (`rejects.toThrow(PartnerApiError)`, `toThrow('Invalid webhook signature')`).
20
+ */
21
+ declare function partnerErrorToException(error: PartnerApiError): PartnerApiError;
2
22
  export { PartnerApiError, PartnerErrorInfo, PartnerErrorKind, partnerErrorToException, toPartnerError };
package/dist/index.d.mts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { AnalysisSourcesOptions, DEFAULT_SEARCH_TYPE, SearchTypeOptions, SourceRangeOptions, dateRangeOptionsQuery, searchTypeQuery, sourceInfoQuery, tablesQuery, withDefaultSearchType } from "./hosted-query.mjs";
2
- import { PartnerApiError, PartnerErrorInfo, PartnerErrorKind, partnerErrorToException, toPartnerError } from "./_chunks/errors.mjs";
2
+ import { PartnerApiError, PartnerErrorInfo, PartnerErrorKind, partnerErrorToException, toPartnerError } from "./errors.mjs";
3
3
  import { AnalyticsClient, AnalyticsClientOptions, AnalyticsFetch, AnalyticsFetchOptions, AnalyticsHeaders, createAnalyticsClient } from "./analytics-client.mjs";
4
4
  import { GscAnalyzerAccent, GscAnalyzerCapabilities, GscAnalyzerCapability, GscAnalyzerDefinition, GscAnalyzerDefinitionWithCapability, GscAnalyzerInsightCard, GscAnalyzerKind, GscAnalyzerPanelResult, GscAnalyzerPanelSpec, GscAnalyzerStatTile, defineGscAnalyzer } from "./analyzer-defs.mjs";
5
5
  import { DailyAnonInput, weightedAnonPct } from "./anonymization.mjs";
package/dist/period.mjs CHANGED
@@ -1,12 +1,6 @@
1
1
  import "./gsc-constants.mjs";
2
2
  import { resolveWindow } from "@gscdump/engine/period";
3
- import { endOfMonth } from "date-fns/endOfMonth";
4
- import { format } from "date-fns/format";
5
- import { startOfMonth } from "date-fns/startOfMonth";
6
- import { startOfQuarter } from "date-fns/startOfQuarter";
7
- import { startOfWeek } from "date-fns/startOfWeek";
8
- import { subDays } from "date-fns/subDays";
9
- import { subMonths } from "date-fns/subMonths";
3
+ import { addDays } from "gscdump/dates";
10
4
  function isCustomPeriod(p) {
11
5
  return typeof p === "string" && p.startsWith("custom:");
12
6
  }
@@ -26,13 +20,14 @@ function parseCustomPeriod(p) {
26
20
  };
27
21
  }
28
22
  function todayInTimezone(timezone = "America/Los_Angeles", now = /* @__PURE__ */ new Date()) {
29
- const date = new Intl.DateTimeFormat("en-CA", {
23
+ const parts = new Intl.DateTimeFormat("en-CA", {
30
24
  timeZone: timezone,
31
25
  year: "numeric",
32
26
  month: "2-digit",
33
27
  day: "2-digit"
34
- }).format(now);
35
- return /* @__PURE__ */ new Date(`${date}T00:00:00`);
28
+ }).formatToParts(now);
29
+ const value = (type) => parts.find((part) => part.type === type).value;
30
+ return `${value("year")}-${value("month")}-${value("day")}`;
36
31
  }
37
32
  const ROLLING_TO_UPSTREAM = {
38
33
  "7d": "last-7d",
@@ -45,8 +40,19 @@ const CALENDAR_TO_UPSTREAM = {
45
40
  "this-month": "mtd",
46
41
  "this-year": "ytd"
47
42
  };
48
- function fmt(d) {
49
- return format(d, "yyyy-MM-dd");
43
+ function startOfMonth(date) {
44
+ return `${date.slice(0, 7)}-01`;
45
+ }
46
+ function endOfMonth(date) {
47
+ return addDays(startOfMonth(addDays(startOfMonth(date), 32)), -1);
48
+ }
49
+ function startOfQuarter(date) {
50
+ const [year, month] = date.split("-").map(Number);
51
+ const quarterMonth = Math.floor((month - 1) / 3) * 3 + 1;
52
+ return `${year}-${String(quarterMonth).padStart(2, "0")}-01`;
53
+ }
54
+ function startOfWeek(date) {
55
+ return addDays(date, -(((/* @__PURE__ */ new Date(`${date}T00:00:00Z`)).getUTCDay() + 6) % 7));
50
56
  }
51
57
  function buildResultFromIso(start, end) {
52
58
  const startDate = /* @__PURE__ */ new Date(`${start}T00:00:00`);
@@ -89,9 +95,7 @@ function periodToDateRange(period, stableDataOrOptions = true) {
89
95
  };
90
96
  return result;
91
97
  }
92
- const today = todayInTimezone(options.timezone, options.now);
93
- const end = stableData ? subDays(today, 3) : subDays(today, 1);
94
- const endIso = fmt(end);
98
+ const endIso = addDays(todayInTimezone(options.timezone, options.now), -(stableData ? 3 : 1));
95
99
  const upstreamPreset = ROLLING_TO_UPSTREAM[period] ?? CALENDAR_TO_UPSTREAM[period];
96
100
  if (upstreamPreset) {
97
101
  const win = resolveWindow({
@@ -103,18 +107,18 @@ function periodToDateRange(period, stableDataOrOptions = true) {
103
107
  let start;
104
108
  switch (period) {
105
109
  case "this-week":
106
- start = startOfWeek(end, { weekStartsOn: 1 });
110
+ start = startOfWeek(endIso);
107
111
  break;
108
112
  case "last-month": {
109
- const prevMonth = subMonths(end, 1);
110
- return buildResultFromIso(fmt(startOfMonth(prevMonth)), fmt(endOfMonth(prevMonth)));
113
+ const previousMonth = addDays(startOfMonth(endIso), -1);
114
+ return buildResultFromIso(startOfMonth(previousMonth), endOfMonth(previousMonth));
111
115
  }
112
116
  case "this-quarter":
113
- start = startOfQuarter(end);
117
+ start = startOfQuarter(endIso);
114
118
  break;
115
- default: start = subDays(end, 27);
119
+ default: start = addDays(endIso, -27);
116
120
  }
117
- return buildResultFromIso(fmt(start), endIso);
121
+ return buildResultFromIso(start, endIso);
118
122
  }
119
123
  function periodToDays(period, stableDataOrOptions = true) {
120
124
  return periodToDateRange(period, stableDataOrOptions).days;
@@ -131,8 +135,6 @@ function compareRange(range, mode) {
131
135
  };
132
136
  }
133
137
  function getGscUnstableCutoffDate() {
134
- const [y, m, d] = (/* @__PURE__ */ new Date()).toLocaleDateString("en-CA", { timeZone: "America/Los_Angeles" }).split("-").map(Number);
135
- const cutoff = new Date(y, m - 1, d - 3);
136
- return `${cutoff.getFullYear()}-${String(cutoff.getMonth() + 1).padStart(2, "0")}-${String(cutoff.getDate()).padStart(2, "0")}`;
138
+ return addDays(todayInTimezone(), -3);
137
139
  }
138
140
  export { compareRange, getGscUnstableCutoffDate, isCustomPeriod, parseCustomPeriod, periodToDateRange, periodToDays };
@@ -1,4 +1,4 @@
1
- import { partnerErrorToException, toPartnerError } from "../errors.mjs";
1
+ import { partnerErrorToException, toPartnerError } from "./errors.mjs";
2
2
  import { err, ok, unwrapResult } from "gscdump/result";
3
3
  import { ofetch } from "ofetch";
4
4
  const TRAILING_SLASH_RE = /\/+$/;
@@ -1,4 +1,4 @@
1
- import { countSearchConsoleIssues, formatSearchConsoleCount } from "./_chunks/search-console-signals.mjs";
1
+ import { countSearchConsoleIssues, formatSearchConsoleCount } from "./search-console-signals.mjs";
2
2
  import { siteTypeBaseline } from "./site-baseline.mjs";
3
3
  function totalSitemapErrors(sitemaps) {
4
4
  return (sitemaps ?? []).reduce((sum, sitemap) => {
@@ -1,4 +1,4 @@
1
- import { countSearchConsoleIssues, formatSearchConsoleCount } from "./_chunks/search-console-signals.mjs";
1
+ import { countSearchConsoleIssues, formatSearchConsoleCount } from "./search-console-signals.mjs";
2
2
  import { normalizeSiteType } from "./site-baseline.mjs";
3
3
  const NASCENT_IMPRESSIONS_28D = 1e3;
4
4
  const ESTABLISHED_IMPRESSIONS_28D = 2e4;
package/dist/utf8.mjs ADDED
@@ -0,0 +1,14 @@
1
+ function utf8Size(value) {
2
+ let bytes = 0;
3
+ for (let index = 0; index < value.length; index++) {
4
+ const code = value.charCodeAt(index);
5
+ if (code <= 127) bytes++;
6
+ else if (code <= 2047) bytes += 2;
7
+ else if (code >= 55296 && code <= 56319 && index + 1 < value.length && value.charCodeAt(index + 1) >= 56320 && value.charCodeAt(index + 1) <= 57343) {
8
+ bytes += 4;
9
+ index++;
10
+ } else bytes += 3;
11
+ }
12
+ return bytes;
13
+ }
14
+ export { utf8Size };
@@ -0,0 +1,126 @@
1
+ import { GscdumpV1ErrorEnvelope, createGscdumpV1Protocol } from "@gscdump/contracts/v1";
2
+ import { ZodTypeAny, z } from "zod";
3
+ type MaybePromise<T> = T | Promise<T>;
4
+ type ValueOf<T> = T[keyof T];
5
+ type ValueOfUnion<T> = T extends unknown ? ValueOf<T> : never;
6
+ type GscdumpV1ProtocolShape = ReturnType<typeof createGscdumpV1Protocol>;
7
+ type GscdumpV1Surface = ValueOf<GscdumpV1ProtocolShape['surfaces']>;
8
+ type GscdumpV1OperationRegistry = GscdumpV1Surface['operations'];
9
+ type GscdumpV1Operation = ValueOfUnion<GscdumpV1OperationRegistry>;
10
+ type GscdumpV1OperationId = GscdumpV1Operation['id'];
11
+ type OperationById<TId extends GscdumpV1OperationId> = Extract<GscdumpV1Operation, {
12
+ id: TId;
13
+ }>;
14
+ type SchemaInput<TSchema> = TSchema extends ZodTypeAny ? z.input<TSchema> : never;
15
+ type SchemaOutput<TSchema> = TSchema extends ZodTypeAny ? z.output<TSchema> : never;
16
+ type RequiredLocation<TKey extends string, TSchema> = TSchema extends ZodTypeAny ? { [K in TKey]: SchemaInput<TSchema>; } : { [K in TKey]?: never; };
17
+ type OptionalLocation<TKey extends string, TSchema> = TSchema extends ZodTypeAny ? { [K in TKey]?: SchemaInput<TSchema>; } : { [K in TKey]?: never; };
18
+ type GscdumpV1OperationInput<TId extends GscdumpV1OperationId> = RequiredLocation<'params', OperationById<TId>['request']['params']> & RequiredLocation<'query', OperationById<TId>['request']['query']> & OptionalLocation<'headers', OperationById<TId>['request']['headers']> & RequiredLocation<'body', OperationById<TId>['request']['body']>;
19
+ type OperationResponseSchema<TId extends GscdumpV1OperationId> = ValueOf<OperationById<TId>['responses']> extends (infer TResponse) ? TResponse extends {
20
+ client: infer TClient extends ZodTypeAny;
21
+ } ? TClient : never : never;
22
+ type GscdumpV1OperationResponse<TId extends GscdumpV1OperationId> = SchemaOutput<OperationResponseSchema<TId>>;
23
+ type GscdumpV1CredentialResolver = string | (() => MaybePromise<string>);
24
+ type GscdumpV1HeadersResolver = HeadersInit | (() => MaybePromise<HeadersInit>);
25
+ interface GscdumpV1RetryOptions {
26
+ /** Total attempts, including the initial request. Defaults to 3 and is capped at 5. */
27
+ maxAttempts?: number;
28
+ /** Deterministic exponential-backoff base. Defaults to 250 ms. */
29
+ baseDelayMs?: number;
30
+ /** Backoff ceiling. Defaults to 2 seconds. Retry-After can exceed this ceiling. */
31
+ maxDelayMs?: number;
32
+ }
33
+ interface CreateGscdumpV1ClientOptions {
34
+ /**
35
+ * Root replacing the contract's `/api` segment. Direct calls default to
36
+ * `https://gscdump.com/api`; a same-origin proxy can use `/api/_gscdump`.
37
+ */
38
+ apiRoot?: string;
39
+ credential: GscdumpV1CredentialResolver;
40
+ fetch?: typeof fetch;
41
+ headers?: GscdumpV1HeadersResolver;
42
+ retry?: GscdumpV1RetryOptions;
43
+ }
44
+ interface GscdumpV1ExecuteOptions {
45
+ signal?: AbortSignal;
46
+ requestId?: string;
47
+ idempotencyKey?: string;
48
+ }
49
+ type GscdumpV1SdkErrorCode = GscdumpV1ErrorEnvelope['error']['code'] | 'aborted' | 'credential_resolution' | 'network_error' | 'protocol_error' | 'request_validation' | 'response_validation';
50
+ interface GscdumpV1ErrorOptions {
51
+ code: GscdumpV1SdkErrorCode;
52
+ message: string;
53
+ status?: number;
54
+ requestId?: string;
55
+ retryable: boolean;
56
+ details: Record<string, unknown>;
57
+ cause?: unknown;
58
+ }
59
+ /** One stable, tagged failure shape for validation, transport, and API errors. */
60
+ declare class GscdumpV1Error extends Error {
61
+ readonly tag: 'GscdumpV1Error';
62
+ readonly code: GscdumpV1SdkErrorCode;
63
+ readonly status?: number;
64
+ readonly requestId?: string;
65
+ readonly retryable: boolean;
66
+ readonly details: Record<string, unknown>;
67
+ readonly cause?: unknown;
68
+ constructor(options: GscdumpV1ErrorOptions);
69
+ }
70
+ declare function isGscdumpV1Error(error: unknown): error is GscdumpV1Error;
71
+ interface GscdumpV1Client {
72
+ execute: <TId extends GscdumpV1OperationId>(operation: TId, input: NoInfer<GscdumpV1OperationInput<TId>>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<TId>>;
73
+ getUserLifecycle: (input: GscdumpV1OperationInput<'partner.users.lifecycle.get'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.users.lifecycle.get'>>;
74
+ listAvailableSites: (input: GscdumpV1OperationInput<'partner.users.sites.available.list'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.users.sites.available.list'>>;
75
+ createSite: (input: GscdumpV1OperationInput<'partner.users.sites.create'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.users.sites.create'>>;
76
+ createUser: (input: GscdumpV1OperationInput<'partner.users.create'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.users.create'>>;
77
+ updateUserTokens: (input: GscdumpV1OperationInput<'partner.users.tokens.update'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.users.tokens.update'>>;
78
+ getSiteIndexing: (input: GscdumpV1OperationInput<'partner.sites.indexing.get'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.sites.indexing.get'>>;
79
+ listSiteIndexingUrls: (input: GscdumpV1OperationInput<'partner.sites.indexing.urls.list'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.sites.indexing.urls.list'>>;
80
+ getSiteIndexingDiagnostics: (input: GscdumpV1OperationInput<'partner.sites.indexing.diagnostics.get'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.sites.indexing.diagnostics.get'>>;
81
+ getSiteSitemaps: (input: GscdumpV1OperationInput<'partner.sites.sitemaps.get'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.sites.sitemaps.get'>>;
82
+ getSiteSitemapChanges: (input: GscdumpV1OperationInput<'partner.sites.sitemaps.changes.get'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.sites.sitemaps.changes.get'>>;
83
+ getSiteAnalysis: (input: GscdumpV1OperationInput<'partner.sites.analysis.get'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.sites.analysis.get'>>;
84
+ getSiteAnalysisBundle: (input: GscdumpV1OperationInput<'partner.sites.analysis.bundle.get'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.sites.analysis.bundle.get'>>;
85
+ deleteSite: (input: GscdumpV1OperationInput<'partner.sites.delete'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.sites.delete'>>;
86
+ getCanonicalMismatches: (input: GscdumpV1OperationInput<'partner.sites.canonical.mismatches.get'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.sites.canonical.mismatches.get'>>;
87
+ inspectSiteUrls: (input: GscdumpV1OperationInput<'partner.sites.indexing.inspect.create'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.sites.indexing.inspect.create'>>;
88
+ recoverSitePermission: (input: GscdumpV1OperationInput<'partner.sites.permission.recover'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.sites.permission.recover'>>;
89
+ queryKeywordSparklines: (input: GscdumpV1OperationInput<'partner.sites.keyword.sparklines.query'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.sites.keyword.sparklines.query'>>;
90
+ getQueryTrend: (input: GscdumpV1OperationInput<'partner.sites.query.trend.get'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.sites.query.trend.get'>>;
91
+ getPageTrend: (input: GscdumpV1OperationInput<'partner.sites.page.trend.get'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.sites.page.trend.get'>>;
92
+ getContentVelocity: (input: GscdumpV1OperationInput<'partner.sites.content.velocity.get'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.sites.content.velocity.get'>>;
93
+ getCtrCurve: (input: GscdumpV1OperationInput<'partner.sites.ctr.curve.get'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.sites.ctr.curve.get'>>;
94
+ getDarkTraffic: (input: GscdumpV1OperationInput<'partner.sites.dark.traffic.get'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.sites.dark.traffic.get'>>;
95
+ getDeviceGap: (input: GscdumpV1OperationInput<'partner.sites.device.gap.get'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.sites.device.gap.get'>>;
96
+ getKeywordBreadth: (input: GscdumpV1OperationInput<'partner.sites.keyword.breadth.get'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.sites.keyword.breadth.get'>>;
97
+ getPositionDistribution: (input: GscdumpV1OperationInput<'partner.sites.position.distribution.get'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.sites.position.distribution.get'>>;
98
+ getTopAssociation: (input: GscdumpV1OperationInput<'partner.sites.top.association.get'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.sites.top.association.get'>>;
99
+ getIndexPercent: (input: GscdumpV1OperationInput<'partner.sites.index.percent.get'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.sites.index.percent.get'>>;
100
+ createSitemapAction: (input: GscdumpV1OperationInput<'partner.sites.sitemaps.action.create'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.sites.sitemaps.action.create'>>;
101
+ querySitemapMembership: (input: GscdumpV1OperationInput<'partner.sites.sitemaps.membership.query'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.sites.sitemaps.membership.query'>>;
102
+ createTeam: (input: GscdumpV1OperationInput<'partner.teams.create'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.teams.create'>>;
103
+ renameTeam: (input: GscdumpV1OperationInput<'partner.teams.rename'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.teams.rename'>>;
104
+ deleteTeam: (input: GscdumpV1OperationInput<'partner.teams.delete'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.teams.delete'>>;
105
+ listTeamMembers: (input: GscdumpV1OperationInput<'partner.teams.members.list'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.teams.members.list'>>;
106
+ addTeamMember: (input: GscdumpV1OperationInput<'partner.teams.members.add'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.teams.members.add'>>;
107
+ updateTeamMemberRole: (input: GscdumpV1OperationInput<'partner.teams.members.role.update'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.teams.members.role.update'>>;
108
+ removeTeamMember: (input: GscdumpV1OperationInput<'partner.teams.members.remove'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.teams.members.remove'>>;
109
+ updateSiteTeam: (input: GscdumpV1OperationInput<'partner.sites.team.update'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.sites.team.update'>>;
110
+ getTeamCatalog: (input: GscdumpV1OperationInput<'partner.teams.catalog.get'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.teams.catalog.get'>>;
111
+ bindTeamCatalog: (input: GscdumpV1OperationInput<'partner.teams.catalog.bind'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.teams.catalog.bind'>>;
112
+ getSiteIntIdCrosswalk: (input: GscdumpV1OperationInput<'partner.users.sites.crosswalk.get'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.users.sites.crosswalk.get'>>;
113
+ deleteUser: (input: GscdumpV1OperationInput<'partner.users.delete'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.users.delete'>>;
114
+ createVerificationToken: (input: GscdumpV1OperationInput<'partner.users.verification.token.create'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.users.verification.token.create'>>;
115
+ addAndVerifySite: (input: GscdumpV1OperationInput<'partner.users.sites.verify.create'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.users.sites.verify.create'>>;
116
+ queryCrossSource: (input: GscdumpV1OperationInput<'partner.sites.cross.source.query'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.sites.cross.source.query'>>;
117
+ enrichKeywords: (input: GscdumpV1OperationInput<'partner.keywords.enrich.query'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'partner.keywords.enrich.query'>>;
118
+ queryAnalyticsRows: (input: GscdumpV1OperationInput<'analytics.rows.query'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'analytics.rows.query'>>;
119
+ queryAnalyticsReport: (input: GscdumpV1OperationInput<'analytics.reports.query'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'analytics.reports.query'>>;
120
+ queryAnalyticsReportDetail: (input: GscdumpV1OperationInput<'analytics.reports.detail.query'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'analytics.reports.detail.query'>>;
121
+ getRealtimeStreamHead: (input?: GscdumpV1OperationInput<'realtime.stream.head.get'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'realtime.stream.head.get'>>;
122
+ createRealtimeTicket: (input: GscdumpV1OperationInput<'realtime.tickets.create'>, options?: GscdumpV1ExecuteOptions) => Promise<GscdumpV1OperationResponse<'realtime.tickets.create'>>;
123
+ }
124
+ /** Create one framework-neutral client whose behavior is driven by the v1 registry. */
125
+ declare function createGscdumpV1Client(options: CreateGscdumpV1ClientOptions): GscdumpV1Client;
126
+ export { CreateGscdumpV1ClientOptions, GscdumpV1Client, GscdumpV1CredentialResolver, GscdumpV1Error, GscdumpV1ErrorOptions, GscdumpV1ExecuteOptions, GscdumpV1HeadersResolver, GscdumpV1Operation, GscdumpV1OperationId, GscdumpV1OperationInput, GscdumpV1OperationResponse, GscdumpV1RetryOptions, GscdumpV1SdkErrorCode, createGscdumpV1Client, isGscdumpV1Error };