diff --git a/packages/cli/src/cliEntry.js b/packages/cli/src/cliEntry.js index 93547041d..cfbbf9b9e 100644 --- a/packages/cli/src/cliEntry.js +++ b/packages/cli/src/cliEntry.js @@ -16,6 +16,7 @@ import type {CommandT, ConfigT} from 'types'; // $FlowFixMe - converted to TS import commands from './commands'; import init from './commands/init/initCompat'; +// $FlowFixMe - converted to TS import assertRequiredOptions from './tools/assertRequiredOptions'; import {logger} from '@react-native-community/cli-tools'; import {setProjectDir} from './tools/packageManager'; diff --git a/packages/cli/src/tools/assertRequiredOptions.js b/packages/cli/src/tools/assertRequiredOptions.ts similarity index 74% rename from packages/cli/src/tools/assertRequiredOptions.js rename to packages/cli/src/tools/assertRequiredOptions.ts index fb5a941ad..966763c50 100644 --- a/packages/cli/src/tools/assertRequiredOptions.js +++ b/packages/cli/src/tools/assertRequiredOptions.ts @@ -6,14 +6,22 @@ * * @format */ - import {Option} from 'commander'; import {camelCase} from 'lodash'; +import {Command} from '@react-native-community/cli-types'; + +type Options = NonNullable; +type PassedOptions = { + [key: string]: unknown; +}; // Commander.js has a 2 years old open issue to support <...> syntax // for options. Until that gets merged, we run the checks manually // https://github.com/tj/commander.js/issues/230 -export default function assertRequiredOptions(options, passedOptions) { +export default function assertRequiredOptions( + options: Options, + passedOptions: PassedOptions, +) { options.forEach(opt => { const option = new Option(opt.name);