microsoft/vscode-react-native

Public

mirrored fromhttps://github.com/microsoft/vscode-react-nativeAvailable

CodeCommitsIssuesPull requestsActionsInsightsSecurity
dev/v-peq/issue-2711-androidContainerUtility_tests

Branches

Tags

  • No tags available.
0Branches0Tags
Go to file
Add file
Code

Clone

HTTPS

Download ZIP

src/typings/exponent/xdl.d.ts

169lines · modecode

1// Type definitions for xdl 0.9.0
2// Project: https://github.com/exponentjs/xdl
3// Definitions by: Patricio Beltran <https://github.com/patobeltran>
4
5declare namespace xdl {
6 interface ILoginOptions {
7 username: string;
8 password: string;
9 }
10
11 interface IUser {
12 type: string;
13 username: string;
14 }
15
16 var User: {
17 loginAsync(loginType: string, options: ILoginOptions): Promise<IUser>;
18 logoutAsync(): Promise<void>;
19 getCurrentUserAsync(): Promise<IUser>;
20 };
21
22 var UserManager: {
23 loginAsync(loginType: string, options: ILoginOptions): Promise<IUser>;
24 logoutAsync(): Promise<void>;
25 getCurrentUserAsync(): Promise<IUser>;
26 };
27
28 interface IStartOptions {
29 reset?: boolean;
30 }
31
32 interface IUrlOptions {
33 urlType?: "exp" | "http" | "redirect";
34 hostType?: "tunnel" | "lan" | "localhost";
35 dev: boolean;
36 minify: boolean;
37 }
38
39 interface IPublishOptions {
40 quiet: boolean;
41 }
42
43 interface IReactNativeServerOptions {
44 reset: boolean;
45 }
46
47 interface IOptions {
48 packagerPort: number;
49 }
50
51 interface IPublishResponse {
52 err: any;
53 url: string;
54 }
55
56 interface SDKVersion {
57 androidExpoViewUrl?: string;
58 expoReactNativeTag: string;
59 expokitNpmPackage?: string;
60 facebookReactNativeVersion: string;
61 facebookReactVersion?: string;
62 iosExpoViewUrl?: string;
63 iosVersion?: string;
64 isDeprecated?: boolean;
65 packagesToInstallWhenEjecting?: { [name: string]: string };
66 releaseNoteUrl?: string;
67 iosClientUrl?: string;
68 iosClientVersion?: string;
69 androidClientUrl?: string;
70 androidClientVersion?: string;
71 relatedPackages?: { [name: string]: string };
72 beta?: boolean;
73 }
74
75 interface SDKVersions {
76 [version: string]: SDKVersion;
77 }
78
79 var Project: {
80 startAsync(projectRoot: string, options?: IStartOptions): Promise<void>;
81 stopAsync(projectRoot: string): Promise<void>;
82 getUrlAsync(projectRoot: string, options?: IUrlOptions): Promise<string>;
83 publishAsync(projectRoot: string, options?: IPublishOptions): Promise<IPublishResponse>;
84 startExpoServerAsync(projectRoot: string): Promise<void>;
85 stopExpoServerAsync(projectRoot: string): Promise<void>;
86 startReactNativeServerAsync(
87 projectRoot: string,
88 options?: IReactNativeServerOptions,
89 ): Promise<void>;
90 stopReactNativeServerAsync(projectRoot: string): Promise<void>;
91 startTunnelsAsync(projectRoot: string): Promise<void>;
92 stopTunnelsAsync(projectRoot: string): Promise<void>;
93 };
94
95 var ProjectSettings: {
96 setPackagerInfoAsync(projectRoot: string, json: Partial<IOptions>): Promise<IOptions>;
97 };
98
99 var UrlUtils: {
100 constructManifestUrlAsync(
101 projectRoot: string,
102 opts?: any,
103 requestHostname?: string,
104 ): Promise<string>;
105 };
106
107 var Versions: {
108 sdkVersionsAsync(): Promise<SDKVersions>;
109 releasedSdkVersionsAsync(): Promise<SDKVersions>;
110 };
111
112 var Android: {
113 startAdbReverseAsync(projectRoot: string): Promise<boolean>;
114 stopAdbReverseAsync(projectRoot: string): Promise<void>;
115 };
116
117 interface IApiConfig {
118 scheme: string;
119 host: string;
120 port: number;
121 }
122
123 interface INgrokConfig {
124 authToken: string;
125 authTokenPublicId: string;
126 domain: string;
127 }
128
129 interface IValidationConfig {
130 reactNativeVersionWarnings: boolean;
131 }
132
133 interface IConfig {
134 api: IApiConfig;
135 ngrok: INgrokConfig;
136 developerTool: any;
137 validation: IValidationConfig;
138 }
139
140 var Config: IConfig;
141
142 interface IBunyanStream {
143 type?: string;
144 level?: number | string;
145 path?: string;
146 stream?: NodeJS.WritableStream | IBunyanStream;
147 closeOnExit?: boolean;
148 period?: string;
149 count?: number;
150 }
151
152 var ProjectUtils: {
153 attachLoggerStream(rootPath: string, options?: IBunyanStream): void;
154 };
155
156 interface ResolveNgrok {
157 resolveNgrokAsync(
158 projectRoot: string,
159 {
160 shouldPrompt = true,
161 autoInstall = false,
162 }: { shouldPrompt?: boolean; autoInstall?: boolean } = {},
163 ): Promise<any>;
164 }
165}
166
167declare module "xdl" {
168 export = xdl;
169}
170