text: /*---------------------------------------------------------------------------------------------
   *  Copyright (c) Microsoft Corporation. All rights reserved.
   *  Licensed under the MIT License. See License.txt in the project root for license information.
   *--------------------------------------------------------------------------------------------*/
  export class InternalEditorAction {
      constructor(id, label, alias, precondition, run, contextKeyService) {
          this.id = id;
          this.label = label;
          this.alias = alias;
          this._precondition = precondition;
          this._run = run;
          this._contextKeyService = contextKeyService;
      }
      isSupported() {
          return this._contextKeyService.contextMatchesRules(this._precondition);
      }
      run() {
          if (!this.isSupported()) {
              return Promise.resolve(undefined);
          }
          return this._run();
      }
  }
  