import StandaloneBuildFlags from './StandaloneBuildFlags'; declare type StandaloneContextDataType = 'user' | 'service'; declare type StandaloneContextTestEnvironment = 'none' | 'local' | 'ci'; /** * A user context is used when we are configuring a standalone app locally on a user's machine, * such as during `exp detach`. */ export declare type StandaloneContextDataUser = { projectPath: string; exp: any; }; /** * A service context is used when we are generating a standalone app remotely on an Expo * service machine, such as during `exp build`. */ export declare type StandaloneContextDataService = { expoSourcePath: string; archivePath: string | null; manifest: any; privateConfig: any; testEnvironment: StandaloneContextTestEnvironment; shellAppSdkVersion: string; }; declare class StandaloneContext { type?: StandaloneContextDataType; data?: StandaloneContextDataUser | StandaloneContextDataService; config: any; published?: { url?: string; releaseChannel: string; }; build?: StandaloneBuildFlags; static createUserContext: (projectPath: string, exp: any, publishedUrl?: string | undefined) => StandaloneContext; static createServiceContext: (expoSourcePath: string, archivePath: string | null, manifest: any, privateConfig: any, testEnvironment: StandaloneContextTestEnvironment, build: StandaloneBuildFlags, publishedUrl: string, releaseChannel: string, shellAppSdkVersion: string) => StandaloneContext; /** * On iOS we begin configuring standalone apps before we have any information about the * project's manifest. */ isAnonymous: () => boolean; } export default StandaloneContext;