1export type Dependency = {
2  name: string;
3  path: string;
4};
5
6export type DetoxApplication = {
7  preset: 'detox';
8  detoxConfigFile: string;
9  appEntryPoint: string;
10  additionalFiles: string[];
11  android?: {
12    detoxTestFile?: string;
13  };
14  tests: { [key: string]: DetoxTest };
15};
16
17export type Application = {
18  reactVersion: string;
19  reactNativeVersion: string;
20  dependencies?: Dependency[];
21  android?: {
22    mainApplication?: string;
23    mainActivity?: string;
24  };
25  ios?: {
26    appDelegateHeader?: string;
27    appDelegate?: string;
28  };
29  tests: { [key: string]: Test };
30} & DetoxApplication;
31
32export type Test = object;
33
34export type DetoxTest = { shouldRunBundler: boolean; configurations: string[] };
35
36export type Config = {
37  applications: { [key: string]: Application };
38};
39