@capgo/cli 8.42.3 → 8.43.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@capgo/cli",
3
3
  "type": "module",
4
- "version": "8.42.3",
4
+ "version": "8.43.2",
5
5
  "description": "A CLI to upload to capgo servers",
6
6
  "author": "Martin martin@capgo.app",
7
7
  "license": "Apache 2.0",
@@ -65,6 +65,7 @@
65
65
  "check-posix-paths": "node test/check-posix-paths.js",
66
66
  "generate-docs": "node dist/index.js generate-docs README.md",
67
67
  "test:bundle": "bun test/test-bundle.mjs",
68
+ "test:bundle-validation": "bun test test/bundle/",
68
69
  "test:prescan": "bun test test/prescan/",
69
70
  "test:functional": "bun test/test-functional.mjs",
70
71
  "test:semver": "bun test/test-semver-validation.mjs",
@@ -72,7 +73,7 @@
72
73
  "test:regex": "bun test/test-regex-validation.mjs",
73
74
  "test:upload": "bun test/test-upload-validation.mjs",
74
75
  "test:fail-on-incompatible": "bun test/test-fail-on-incompatible.mjs",
75
- "test:native-dependencies": "bun test/test-native-dependencies.mjs",
76
+ "test:native-dependencies": "bun test/test-native-dependencies.mjs && bun test/test-get-remote-dependencies.mjs",
76
77
  "test:package-json-guard": "bun test/test-package-json-guard.mjs",
77
78
  "test:credentials": "bun test/test-credentials.mjs",
78
79
  "test:asc-key-protocol": "bun test/test-asc-key-protocol.mjs",
@@ -109,18 +110,21 @@
109
110
  "test:app-list-output-text": "bun test/test-app-list-output-text.mjs",
110
111
  "test:doctor-analytics": "bun test/test-doctor-analytics.mjs",
111
112
  "test:posthog-exception": "bun test/test-posthog-exception.mjs",
113
+ "test:cli-recovery": "bun test/test-cli-recovery.mjs",
112
114
  "test:create-supabase-client": "bun test/test-create-supabase-client.mjs",
113
115
  "test:onboarding-recovery": "bun test/test-onboarding-recovery.mjs",
114
116
  "test:onboarding-progress": "bun test/test-onboarding-progress.mjs",
115
117
  "test:onboarding-run-targets": "bun test/test-onboarding-run-targets.mjs",
116
118
  "test:run-device-command": "bun test/test-run-device-command.mjs",
117
119
  "test:init-app-conflict": "bun test/test-init-app-conflict.mjs",
120
+ "test:channel-add-exists": "bun test/test-channel-add-exists.mjs",
118
121
  "test:wait-log": "bun test/test-wait-log.mjs",
119
122
  "test:init-guardrails": "bun test/test-init-guardrails.mjs",
120
123
  "test:init-replay": "bun test/test-init-replay.mjs",
121
124
  "test:init-telemetry": "bun test/test-init-telemetry.mjs",
122
125
  "test:capacitor-config-target": "bun test/test-capacitor-config-target.mjs",
123
- "test:init-monorepo-targeting": "bun run test:capacitor-config-target && bun test/test-init-monorepo-targeting.mjs",
126
+ "test:cli-user-error-config": "bun test/test-cli-user-error-config.mjs",
127
+ "test:init-monorepo-targeting": "bun run test:capacitor-config-target && bun run test:cli-user-error-config && bun test/test-init-monorepo-targeting.mjs",
124
128
  "test:prompt-preferences": "bun test/test-prompt-preferences.mjs",
125
129
  "test:esm-sdk": "node test/test-sdk-esm.mjs",
126
130
  "test:auth-session": "bun test/test-auth-session.mjs",
@@ -168,7 +172,7 @@
168
172
  "test:android-version": "bun test/test-android-version.mjs",
169
173
  "test:platform-flow-contract": "bun test/test-platform-flow-contract.mjs",
170
174
  "test:tail-engine-shared": "bun test/test-tail-engine-shared.mjs",
171
- "test": "bun run build && bun run test:helper-dce && bun run test:version-detection:setup && bun run test:bundle && bun run test:functional && bun run test:semver && bun run test:auto-bump-version && bun run test:auto-bump-ai-diff && bun run test:version-edge-cases && bun run test:regex && bun run test:upload && bun run test:fail-on-incompatible && bun run test:native-dependencies && bun run test:package-json-guard && bun run test:credentials && bun run test:credentials-validation && bun run test:android-service-account-validation && bun run test:build-zip-filter && bun run test:checksum && bun run test:build-needed && bun run test:ci-prompts && bun run test:ci-secrets && bun run test:android-onboarding-progress && bun run test:onboarding-telemetry && bun run test:v2-event-migration && bun run test:analytics && bun run test:cli-headers && bun run test:authenticated-command-invocation && bun run test:analytics-error-category && bun run test:analytics-org-resolver && bun run test:supabase-perf && bun run test:preview-qr && bun run test:app-set-options && bun run test:mcp-analytics && bun run test:mcp-instructions && bun run test:mcp-live-update-onboarding && bun run test:mcp-stdout-guard && bun run test:mcp-platform-select && bun run test:mcp-explain-scopes && bun run test:mcp-oauth-reopen && bun run test:mcp-broker-oauth && bun run test:mcp-broker-session && bun run test:mcp-credentials-manage && bun run test:mcp-resume-prompt && bun run test:mcp-build-job && bun run test:mcp-build-tools && bun run test:app-created-source && bun run test:app-list-output-text && bun run test:doctor-analytics && bun run test:posthog-exception && bun run test:create-supabase-client && bun run test:build-platform-selection && bun run test:builder-project-discovery && bun run test:onboarding-recovery && bun run test:onboarding-progress && bun run test:onboarding-run-targets && bun run test:run-device-command && bun run test:init-monorepo-targeting && bun run test:init-app-conflict && bun run test:wait-log && bun run test:init-guardrails && bun run test:init-replay && bun run test:init-telemetry && bun run test:prompt-preferences && bun run test:esm-sdk && bun run test:mcp && bun run test:mcp-no-key-handshake && bun run test:auth-session && bun run test:version-detection && bun run test:platform-paths && bun run test:project-type-detection && bun run test:payload-split && bun run test:manifest-path-encoding && bun run test:macos-signing && bun run test:asc-key-protocol && bun run test:apple-api-import-helpers && bun run test:apple-api-verify-key && bun run test:bundle-id-detector && bun run test:apple-api-app-list && bun run test:app-verification && bun run test:pbxproj-parser && bun run test:ai-log-capture && bun run test:ai-analyze-flow && bun run test:cicd-failure-help && bun run test:ai-sse-parser && bun run test:ai-render-markdown && bun run test:ai-stream-markdown && bun run test:ai-onboarding-mode && bun run test:ai-fit && bun run test:platform-layout && bun run test:frame-fit && bun run test:onboarding-min-size && bun run test:min-size-gate && bun run test:shell-size-gate && bun run test:build-log-sanitize && bun run test:build-output-viewport && bun run test:diff-viewer-viewport && bun run test:build-complete-exit && bun run test:ai-analyze-stream && bun run test:support-mailto && bun run test:support-redact && bun run test:support-internal-log && bun run test:support-help-menu && bun run test:support-contact && bun run test:support-upload-prompt && bun run test:support-bundle-files && bun run test:self-update && bun run test:update-prompt && bun run test:apple-api-cert-create && bun run test:android-tail-engine && bun run test:android-tail-render && bun run test:android-tail-routing && bun run test:dev-gate-stripped && bun run test:frame-fit-ios-shared && bun run test:ios-confirm-app-id && bun run test:ios-create-new && bun run test:ios-e2e && bun run test:ios-flow-contract && bun run test:ios-import-discovery && bun run test:ios-import-export && bun run test:ios-import-pickers && bun run test:ios-import-recovery && bun run test:ios-recovery && bun run test:ios-resume && bun run test:ios-tail-handoff && bun run test:ios-tui-render && bun run test:p8-error && bun run test:ios-tui-routing && bun run test:ios-updater-sync-validation && bun run test:ios-verify-app && bun run test:ios-marketing-version && bun run test:android-version && bun run test:platform-flow-contract && bun run test:tail-engine-shared && bun run test:prescan && bun run test:android-reporting-api && bun run test:android-app-verification && bun run test:android-rename && bun run test:appflow-auth && bun run test:appflow-api-map && bun run test:appflow-validate && bun run test:appflow-flow && bun run test:appflow-gapfill && bun run test:appflow-engine && bun run test:appflow-tail && bun run test:appflow-fetch && bun run test:appflow-sa-decode && bun run test:app-permission-helper && bun run test:organization-set-api-host && bun run test:trial-warning && bun run test:plan-validation",
175
+ "test": "bun run build && bun run test:helper-dce && bun run test:version-detection:setup && bun run test:bundle && bun run test:bundle-validation && bun run test:functional && bun run test:semver && bun run test:auto-bump-version && bun run test:auto-bump-ai-diff && bun run test:version-edge-cases && bun run test:regex && bun run test:upload && bun run test:fail-on-incompatible && bun run test:native-dependencies && bun run test:package-json-guard && bun run test:credentials && bun run test:credentials-validation && bun run test:android-service-account-validation && bun run test:build-zip-filter && bun run test:checksum && bun run test:build-needed && bun run test:ci-prompts && bun run test:ci-secrets && bun run test:android-onboarding-progress && bun run test:onboarding-telemetry && bun run test:v2-event-migration && bun run test:analytics && bun run test:cli-headers && bun run test:authenticated-command-invocation && bun run test:analytics-error-category && bun run test:analytics-org-resolver && bun run test:supabase-perf && bun run test:preview-qr && bun run test:app-set-options && bun run test:mcp-analytics && bun run test:mcp-instructions && bun run test:mcp-live-update-onboarding && bun run test:mcp-stdout-guard && bun run test:mcp-platform-select && bun run test:mcp-explain-scopes && bun run test:mcp-oauth-reopen && bun run test:mcp-broker-oauth && bun run test:mcp-broker-session && bun run test:mcp-credentials-manage && bun run test:mcp-resume-prompt && bun run test:mcp-build-job && bun run test:mcp-build-tools && bun run test:app-created-source && bun run test:app-list-output-text && bun run test:doctor-analytics && bun run test:posthog-exception && bun run test:cli-recovery && bun run test:create-supabase-client && bun run test:build-platform-selection && bun run test:builder-project-discovery && bun run test:onboarding-recovery && bun run test:onboarding-progress && bun run test:onboarding-run-targets && bun run test:run-device-command && bun run test:init-monorepo-targeting && bun run test:init-app-conflict && bun run test:channel-add-exists && bun run test:wait-log && bun run test:init-guardrails && bun run test:init-replay && bun run test:init-telemetry && bun run test:prompt-preferences && bun run test:esm-sdk && bun run test:mcp && bun run test:mcp-no-key-handshake && bun run test:auth-session && bun run test:version-detection && bun run test:platform-paths && bun run test:project-type-detection && bun run test:payload-split && bun run test:manifest-path-encoding && bun run test:macos-signing && bun run test:asc-key-protocol && bun run test:apple-api-import-helpers && bun run test:apple-api-verify-key && bun run test:bundle-id-detector && bun run test:apple-api-app-list && bun run test:app-verification && bun run test:pbxproj-parser && bun run test:ai-log-capture && bun run test:ai-analyze-flow && bun run test:cicd-failure-help && bun run test:ai-sse-parser && bun run test:ai-render-markdown && bun run test:ai-stream-markdown && bun run test:ai-onboarding-mode && bun run test:ai-fit && bun run test:platform-layout && bun run test:frame-fit && bun run test:onboarding-min-size && bun run test:min-size-gate && bun run test:shell-size-gate && bun run test:build-log-sanitize && bun run test:build-output-viewport && bun run test:diff-viewer-viewport && bun run test:build-complete-exit && bun run test:ai-analyze-stream && bun run test:support-mailto && bun run test:support-redact && bun run test:support-internal-log && bun run test:support-help-menu && bun run test:support-contact && bun run test:support-upload-prompt && bun run test:support-bundle-files && bun run test:self-update && bun run test:update-prompt && bun run test:apple-api-cert-create && bun run test:android-tail-engine && bun run test:android-tail-render && bun run test:android-tail-routing && bun run test:dev-gate-stripped && bun run test:frame-fit-ios-shared && bun run test:ios-confirm-app-id && bun run test:ios-create-new && bun run test:ios-e2e && bun run test:ios-flow-contract && bun run test:ios-import-discovery && bun run test:ios-import-export && bun run test:ios-import-pickers && bun run test:ios-import-recovery && bun run test:ios-recovery && bun run test:ios-resume && bun run test:ios-tail-handoff && bun run test:ios-tui-render && bun run test:p8-error && bun run test:ios-tui-routing && bun run test:ios-updater-sync-validation && bun run test:ios-verify-app && bun run test:ios-marketing-version && bun run test:android-version && bun run test:platform-flow-contract && bun run test:tail-engine-shared && bun run test:prescan && bun run test:android-reporting-api && bun run test:android-app-verification && bun run test:android-rename && bun run test:appflow-auth && bun run test:appflow-api-map && bun run test:appflow-validate && bun run test:appflow-flow && bun run test:appflow-gapfill && bun run test:appflow-engine && bun run test:appflow-tail && bun run test:appflow-fetch && bun run test:appflow-sa-decode && bun run test:app-permission-helper && bun run test:2fa-compliance-network && bun run test:organization-set-api-host && bun run test:trial-warning && bun run test:plan-validation",
172
176
  "test:build-platform-selection": "bun test/test-build-platform-selection.mjs",
173
177
  "test:builder-project-discovery": "bun test/test-builder-project-discovery.mjs",
174
178
  "test:ai-log-capture": "bun test/test-ai-log-capture.mjs",
@@ -211,6 +215,7 @@
211
215
  "test:appflow-fetch": "bun test/test-appflow-fetch.mjs",
212
216
  "test:appflow-sa-decode": "bun test/test-appflow-sa-decode.mjs",
213
217
  "test:app-permission-helper": "bun test/test-app-permission-helper.mjs",
218
+ "test:2fa-compliance-network": "bun test/test-2fa-compliance-network.mjs",
214
219
  "test:organization-set-api-host": "bun test/test-organization-set-api-host.mjs",
215
220
  "test:trial-warning": "bun test/test-trial-warning.mjs",
216
221
  "test:plan-validation": "bun test/test-plan-validation.mjs",
@@ -44,6 +44,5 @@ export declare function check2FAComplianceForApp(supabase: SupabaseClient<Databa
44
44
  export declare function checkAppExistsAndHasPermissionOrgErr(supabase: SupabaseClient<Database>, apikey: string, appid: string, requiredPermissionKey: string, silent?: boolean, skip2FACheck?: boolean, channelId?: number | null): Promise<boolean>;
45
45
  export type { AppOptions as Options } from '../schemas/app';
46
46
  export declare const newIconPath = "assets/icon.png";
47
- export declare const defaultAppIconPath = "public/capgo.png";
48
47
  export declare function resolveAppSetIconPath(explicitIcon?: string): string | undefined;
49
48
  export declare function getAppIconStoragePath(organizationUid: string, appId: string): string;
@@ -14,6 +14,7 @@ interface RSAKeys {
14
14
  privateKey: string;
15
15
  }
16
16
  export declare function createRSA(): RSAKeys;
17
+ export declare function derivePublicKeyFromPrivate(privateKeyPem: string): string;
17
18
  /**
18
19
  * Calculate the key ID from a public key
19
20
  * Shows the first 20 characters of base64-encoded key body for easy visual verification
@@ -9,7 +9,7 @@ export declare function addAppInternal(initialAppId: string, options: AppOptions
9
9
  organizationUid: string;
10
10
  userId: string;
11
11
  name: string;
12
- iconUrl: string;
13
- signedURL: string;
12
+ iconUrl: string | undefined;
13
+ signedURL: string | undefined;
14
14
  }>;
15
15
  export declare function addApp(appId: string, options: AppOptions): Promise<void>;
@@ -1,6 +1,42 @@
1
+ import { getPMAndCommand } from '../utils';
2
+ export declare const OUTDATED_DEPENDENCIES_ERROR = "Some dependencies are not up to date";
3
+ export interface OutdatedDependency {
4
+ name: string;
5
+ installed: string;
6
+ latest: string;
7
+ }
8
+ export type DoctorUpdateChoice = 'capgo-only' | 'all' | 'skip';
1
9
  interface DoctorInfoOptions {
2
10
  packageJson?: string;
3
11
  }
12
+ export declare function parseDoctorPackageJsonPaths(packageJson?: string): string[] | undefined;
13
+ export declare function resolveDoctorProjectRoot(packageJson?: string): string;
14
+ export declare function groupOutdatedPackagesByPackageJson(packageJsonPaths: string[], packages: OutdatedDependency[], readDeclaredNames?: (packageJsonPath: string) => Set<string>): {
15
+ packageJsonPath: string;
16
+ packages: OutdatedDependency[];
17
+ }[];
18
+ export declare function shellQuotePath(path: string, shellPlatform?: NodeJS.Platform): string;
19
+ export declare function formatDoctorInstallHint(projectRoot: string, installCommand: string, shellPlatform?: NodeJS.Platform): string;
20
+ export declare function buildOutdatedInstallCommandsForDoctor(packageJson: string | undefined, packages: OutdatedDependency[], readDeclaredNames?: (packageJsonPath: string) => Set<string>, shellPlatform?: NodeJS.Platform): string;
21
+ export declare function runOutdatedDependencyUpdatesForDoctor(packageJson: string | undefined, packages: OutdatedDependency[], readDeclaredNames?: (packageJsonPath: string) => Set<string>): void;
22
+ export declare function getPMAndCommandForDir(projectRoot: string): {
23
+ pm: import("@capgo/find-package-manager").PackageManagerType;
24
+ command: import("@capgo/find-package-manager").InstallCommand;
25
+ installCommand: string;
26
+ runner: any;
27
+ };
28
+ export interface DoctorRecoveryResult {
29
+ recovered: boolean;
30
+ remainingOutdated: OutdatedDependency[];
31
+ }
32
+ export declare function listOutdatedDependencies(installed: Record<string, string>, latest: Record<string, string>): OutdatedDependency[];
33
+ export declare function partitionOutdatedDependencies(outdated: OutdatedDependency[]): {
34
+ capgo: OutdatedDependency[];
35
+ other: OutdatedDependency[];
36
+ };
37
+ export declare function packagesForDoctorUpdateChoice(choice: DoctorUpdateChoice, capgo: OutdatedDependency[], other: OutdatedDependency[]): OutdatedDependency[];
38
+ export declare function buildOutdatedInstallCommand(pm: ReturnType<typeof getPMAndCommand>, packages: OutdatedDependency[]): string;
39
+ export declare function runOutdatedDependencyUpdates(pm: ReturnType<typeof getPMAndCommand>, packages: OutdatedDependency[], projectRoot: string): void;
4
40
  export declare function computeDoctorAnalyticsTags(installed: Record<string, string>, latest: Record<string, string>): {
5
41
  is_outdated: boolean;
6
42
  dependency_count: number;
@@ -0,0 +1,4 @@
1
+ export declare function requireZipPath(zipPath: string | undefined): asserts zipPath is string;
2
+ export declare function requireExistingZipPath(zipPath: string): void;
3
+ export declare function requireChecksum(checksum: string | undefined): string;
4
+ export declare function requireIvSessionKey(ivSessionKey: string | undefined): asserts ivSessionKey is string;
@@ -1,4 +1,16 @@
1
+ import type { SupabaseClient } from '@supabase/supabase-js';
1
2
  import type { ChannelAddOptions } from '../schemas/channel';
3
+ import type { Database } from '../types/supabase.types';
4
+ export declare function isChannelReadableByCaller(supabase: SupabaseClient<Database>, appId: string, channelName: string): Promise<boolean | null>;
5
+ export type ChannelAddDuplicateOutcome = 'duplicate_readable' | 'duplicate_inaccessible' | 'not_duplicate';
6
+ export declare function resolveChannelAddDuplicateOutcome(params: {
7
+ createError: unknown;
8
+ supabase: SupabaseClient<Database>;
9
+ appId: string;
10
+ channelName: string;
11
+ }, deps?: {
12
+ isChannelReadableByCaller?: typeof isChannelReadableByCaller;
13
+ }): Promise<ChannelAddDuplicateOutcome>;
2
14
  export declare function addChannelInternal(channelId: string, appId: string, options: ChannelAddOptions, silent?: boolean): Promise<{
3
15
  name: string;
4
16
  }>;
@@ -12,7 +12,9 @@ export declare function getConfigWriteTarget(): string | undefined;
12
12
  * redirect one another's writes while awaiting async work.
13
13
  */
14
14
  export declare function withConfigWriteTarget<T>(filePath: string | undefined, action: () => T): T;
15
- export declare function resolveCapacitorConfigTargetPath(value: string | undefined, initialCwd?: string): string | undefined;
15
+ export declare function resolveCapacitorConfigTargetPath(value: string | undefined, initialCwd?: string, options?: {
16
+ logError?: boolean;
17
+ }): string | undefined;
16
18
  export declare function loadConfigTarget(filePath: string): Promise<CapacitorConfig>;
17
19
  export declare function loadConfig(): Promise<ExtConfigPairs | undefined>;
18
20
  /**
@@ -1,4 +1,6 @@
1
1
  import type { Command } from 'commander';
2
+ /** Stable message for broken/outdated native iOS projects after cap sync. */
3
+ export declare const IOS_SYNC_VALIDATION_FAILED_MESSAGE = "iOS sync validation failed. Delete your iOS folder, then rerun the add and sync commands above and retry.";
2
4
  type CliPosthogExceptionKind = 'unhandled_error';
3
5
  interface CapturePosthogExceptionPayload {
4
6
  error: unknown;
@@ -0,0 +1,15 @@
1
+ import type { CapacitorConfig } from '../config';
2
+ export declare function isValidAppId(appId: string): boolean;
3
+ export declare function parsePackageJsonOptionPaths(packageJson?: string): string[] | undefined;
4
+ export declare function collectAppIdCandidates(config: CapacitorConfig | undefined, projectRoot?: string, packageJsonPaths?: string[]): string[];
5
+ export interface ResolveAppIdOptions {
6
+ explicitAppId?: string;
7
+ config?: CapacitorConfig;
8
+ apikey?: string;
9
+ packageJsonPaths?: string[];
10
+ interactive?: boolean;
11
+ json?: boolean;
12
+ supaHost?: string;
13
+ supaAnon?: string;
14
+ }
15
+ export declare function resolveAppIdWithRecovery(options: ResolveAppIdOptions): Promise<string>;
@@ -0,0 +1,12 @@
1
+ export declare function resolveLocalSemverFallback(uuid: string): string;
2
+ export declare function resolveUpdaterPackageJsonPath(packageJsonOption?: string): string;
3
+ export declare function buildUpdaterInstallInvocation(pm: {
4
+ pm: string;
5
+ installCommand: string;
6
+ }, versionToInstall: string, declaredVersion: string | null): {
7
+ command: string;
8
+ args: string[];
9
+ } | null;
10
+ export declare function recoverInvalidSemverBundle(bundle: string, fallback: string): Promise<string | null>;
11
+ export declare function recoverMissingWebDirPath(pathLabel: string): Promise<string | null>;
12
+ export declare function recoverMissingUpdater(packageJsonPath?: string): Promise<boolean>;
@@ -0,0 +1,17 @@
1
+ export declare const notifyAppReadyDocsUrl = "https://capgo.app/docs/plugins/updater/notify-app-ready/";
2
+ export declare function findBuildEntryJsPath(webDir: string): string | undefined;
3
+ export declare function resolveCapacitorUpdaterIdentifier(content: string): string | undefined;
4
+ export declare function hasCallableCapacitorUpdaterBinding(content: string): boolean;
5
+ export declare function injectNotifyAppReadyIntoJs(filePath: string, content: string): string;
6
+ export declare function injectNotifyAppReadyIntoBuildJs(content: string): string | undefined;
7
+ export declare function patchNotifyAppReadyInBuildFolder(webDir: string): string | undefined;
8
+ export declare function patchNotifyAppReadyInSourceAsync(projectRoot?: string): Promise<string | undefined>;
9
+ export type NotifyAppReadyRecoveryResult = 'present' | 'recovered' | 'skipped';
10
+ export interface EnsureNotifyAppReadyOptions {
11
+ webDir: string;
12
+ interactive?: boolean;
13
+ json?: boolean;
14
+ allowSkip?: boolean;
15
+ }
16
+ export declare function buildCiNotifyAppReadyMessage(webDir: string): string;
17
+ export declare function ensureNotifyAppReadyInBuildFolder(options: EnsureNotifyAppReadyOptions): Promise<NotifyAppReadyRecoveryResult>;
@@ -0,0 +1,7 @@
1
+ export interface EnsurePublicKeyOptions {
2
+ interactive?: boolean;
3
+ silent?: boolean;
4
+ json?: boolean;
5
+ }
6
+ export declare function ensurePublicKeyInConfig(options?: EnsurePublicKeyOptions): Promise<void>;
7
+ export declare function ensurePublicKeyFromPrivateKey(privateKeyPem: string, options?: Pick<EnsurePublicKeyOptions, 'silent' | 'json'>): Promise<void>;
@@ -25,6 +25,7 @@ export declare const optionsUploadSchema: z.ZodObject<{
25
25
  s3Endpoint: z.ZodOptional<z.ZodString>;
26
26
  bundleUrl: z.ZodOptional<z.ZodBoolean>;
27
27
  codeCheck: z.ZodOptional<z.ZodBoolean>;
28
+ ignoreNotifyAppReady: z.ZodOptional<z.ZodBoolean>;
28
29
  oldEncryption: z.ZodOptional<z.ZodBoolean>;
29
30
  minUpdateVersion: z.ZodOptional<z.ZodString>;
30
31
  autoMinUpdateVersion: z.ZodOptional<z.ZodBoolean>;
@@ -114,6 +115,7 @@ export declare const bundleZipOptionsSchema: z.ZodObject<{
114
115
  bundle: z.ZodOptional<z.ZodString>;
115
116
  path: z.ZodOptional<z.ZodString>;
116
117
  codeCheck: z.ZodOptional<z.ZodBoolean>;
118
+ ignoreNotifyAppReady: z.ZodOptional<z.ZodBoolean>;
117
119
  name: z.ZodOptional<z.ZodString>;
118
120
  json: z.ZodOptional<z.ZodBoolean>;
119
121
  keyV2: z.ZodOptional<z.ZodBoolean>;
@@ -4,6 +4,7 @@ export interface SDKResult<T = void> {
4
4
  success: boolean;
5
5
  data?: T;
6
6
  error?: string;
7
+ errorContext?: Record<string, unknown>;
7
8
  securityPolicyMessage?: string;
8
9
  isSecurityPolicyError?: boolean;
9
10
  warnings?: string[];