extensions/typescript-language-features/src/languageFeatures/refactor.ts/SelectRefactorCommand/execute
class SelectRefactorCommand:	public async execute(args: SelectRefactorCommand_Args): Promise<void> {
		const file = this.client.toOpenedFilePath(args.document);
		if (!file) {
			return;
		}

		const selected = await vscode.window.showQuickPick(args.info.actions.map((action): vscode.QuickPickItem => ({
			label: action.name,
			description: action.description,
		})));
		if (!selected) {
			return;
		}

		const tsAction = new InlinedCodeAction(this.client, args.action.title, args.action.kind, args.document, args.info.name, selected.label, args.rangeOrSelection);
		await tsAction.resolve(nulToken);

		if (tsAction.edit) {
			if (!(await vscode.workspace.applyEdit(tsAction.edit))) {
				vscode.window.showErrorMessage(localize('refactoringFailed', "Could not apply refactoring"));
				return;
			}
		}

		await this.didApplyCommand.execute({ codeAction: tsAction });
	}