src/vs/workbench/services/workspaces/common/workspaceTrust.ts/WorkspaceTrustRequestService/requestOpenFilesTrust
class WorkspaceTrustRequestService:	async requestOpenFilesTrust(uris: URI[]): Promise<WorkspaceTrustUriResponse> {
		// If workspace is untrusted, there is no conflict
		if (!this.workspaceTrustManagementService.isWorkspaceTrusted()) {
			return WorkspaceTrustUriResponse.Open;
		}

		const openFilesTrustInfo = await Promise.all(uris.map(uri => this.workspaceTrustManagementService.getUriTrustInfo(uri)));

		// If all uris are trusted, there is no conflict
		if (openFilesTrustInfo.map(info => info.trusted).every(trusted => trusted)) {
			return WorkspaceTrustUriResponse.Open;
		}

		// If user has setting, don't need to ask
		if (this.untrustedFilesSetting !== 'prompt') {
			if (this.untrustedFilesSetting === 'newWindow') {
				return WorkspaceTrustUriResponse.OpenInNewWindow;
			}

			if (this.untrustedFilesSetting === 'open') {
				return WorkspaceTrustUriResponse.Open;
			}
		}

		// If we already asked the user, don't need to ask again
		if (this.workspaceTrustManagementService.acceptsOutOfWorkspaceFiles) {
			return WorkspaceTrustUriResponse.Open;
		}

		// Create/return a promise
		if (!this._openFilesTrustRequestPromise) {
			this._openFilesTrustRequestPromise = new Promise<WorkspaceTrustUriResponse>(resolve => {
				this._openFilesTrustRequestResolver = resolve;
			});
		} else {
			return this._openFilesTrustRequestPromise;
		}

		this._onDidInitiateOpenFilesTrustRequest.fire();
		return this._openFilesTrustRequestPromise;
	}