import { ExpoConfig } from '@expo/config'; import { ProjectSettings } from './internal'; interface URLOptions extends ProjectSettings.ProjectSettings { urlType: null | 'exp' | 'http' | 'no-protocol' | 'redirect' | 'custom'; } interface MetroQueryOptions { dev?: boolean; strict?: boolean; minify?: boolean; } export declare function constructBundleUrlAsync(projectRoot: string, opts: Partial, requestHostname?: string): Promise; export declare function constructDeepLinkAsync(projectRoot: string, opts?: Partial, requestHostname?: string): Promise; export declare function constructManifestUrlAsync(projectRoot: string, opts?: Partial, requestHostname?: string): Promise; export declare function constructDevClientUrlAsync(projectRoot: string, opts?: Partial, requestHostname?: string): Promise; export declare function constructHostUriAsync(projectRoot: string, requestHostname?: string): Promise; export declare function constructLogUrlAsync(projectRoot: string, requestHostname?: string): Promise; export declare function constructLoadingUrlAsync(projectRoot: string, platform: 'ios' | 'android' | null, requestHostname?: string): Promise; export declare function constructUrlWithExtensionAsync(projectRoot: string, entryPoint: string, ext: string, requestHostname?: string, metroQueryOptions?: MetroQueryOptions): Promise; export declare function constructPublishUrlAsync(projectRoot: string, entryPoint: string, requestHostname?: string, metroQueryOptions?: MetroQueryOptions): Promise; export declare function constructSourceMapUrlAsync(projectRoot: string, entryPoint: string, requestHostname?: string): Promise; export declare function constructAssetsUrlAsync(projectRoot: string, entryPoint: string, requestHostname?: string): Promise; export declare function constructDebuggerHostAsync(projectRoot: string, requestHostname?: string): Promise; export declare function constructBundleQueryParams(projectRoot: string, opts: MetroQueryOptions): string; export declare function constructBundleQueryParamsWithConfig(projectRoot: string, opts: MetroQueryOptions, exp: Pick): string; export declare function constructWebAppUrlAsync(projectRoot: string, options?: { hostType?: 'localhost' | 'lan' | 'tunnel'; }): Promise; export declare function constructUrlAsync(projectRoot: string, incomingOpts: Partial | null, isPackager: boolean, requestHostname?: string): Promise; export declare function stripJSExtension(entryPoint: string): string; export declare function isHttps(urlString: string): boolean; export declare function isURL(urlString: string, { protocols, requireProtocol }: { protocols?: string[]; requireProtocol?: boolean; }): boolean; export {};