message: ECSqlStatement is backend only, remove unnecessary RunsIn decorators
diff: /*---------------------------------------------------------------------------------------------
  | $Copyright: (c) 2017 Bentley Systems, Incorporated. All rights reserved. $
  *--------------------------------------------------------------------------------------------*/
  -import { MultiTierExecutionHost, RunsIn, Tier } from "@bentley/bentleyjs-core/lib/tiering";
  +import { assert } from "@bentley/bentleyjs-core/lib/Assert";
  import { DbResult } from "@bentley/bentleyjs-core/lib/BeSQLite";
  import { IModelError } from "../IModelError";
  import { BindingUtility, BindingValue } from "./BindingUtility";
  -import { assert } from "@bentley/bentleyjs-core/lib/Assert";
  declare function require(arg: string): any;
  // tslint:disable-next-line:no-var-requires
  @@ -14,7 +13,6 @@ let dgnDbNodeAddon: any | undefined;
  if (addonLoader !== undefined)
  dgnDbNodeAddon = addonLoader.loadNodeAddon(); // Note that evaluating this script has the side-effect of loading the addon
  -@MultiTierExecutionHost("@bentley/imodeljs-core/ECSqlStatement")
  export class ECSqlStatement implements IterableIterator<any> {
  private _stmt: any | undefined;
  private _isShared: boolean = false;
  @@ -32,22 +30,19 @@ export class ECSqlStatement implements IterableIterator<any> {
  return this._stmt !== undefined;
  }
  - @RunsIn(Tier.Services)
  - public prepare(db: any, ecsqlStatement: string): void {
  + public prepare(db: any, statement: string): void {
  if (this.isPrepared())
  throw new Error("statement is already prepared");
  this._stmt = new dgnDbNodeAddon.ECSqlStatement();
  - const error = this._stmt.prepare(db, ecsqlStatement);
  + const error = this._stmt.prepare(db, statement);
  if (error !== undefined)
  throw new IModelError(error.status, error.message);
  }
  - @RunsIn(Tier.Services)
  public reset(): DbResult {
  return this._stmt.reset();
  }
  - @RunsIn(Tier.Services)
  public dispose(): void {
  if (this.isShared())
  throw new Error("you can't dispose a statement that is shared with others (e.g., in a cache)");
  @@ -59,28 +54,24 @@ export class ECSqlStatement implements IterableIterator<any> {
  assert(!this.isPrepared()); // leaves the statement in the un-prepared state
  }
  - @RunsIn(Tier.Services)
  public clearBindings(): DbResult {
  return this._stmt.clearBindings();
  }
  - @RunsIn(Tier.Services)
  public bindValues(bindings: BindingValue[]| Map<string, BindingValue>| any): void {
  const { error, result: ecBindings } = BindingUtility.preProcessBindings(bindings);
  if (error)
  throw new IModelError(error.status, error.message);
  const bindingsStr = JSON.stringify(ecBindings);
  - const nativeerror = this._stmt.bindValues(bindingsStr);
  - if (nativeerror !== undefined)
  - throw new IModelError(nativeerror.status, nativeerror.message);
  + const nativeError = this._stmt.bindValues(bindingsStr);
  + if (nativeError !== undefined)
  + throw new IModelError(nativeError.status, nativeError.message);
  }
  - @RunsIn(Tier.Services)
  public step(): DbResult {
  return this._stmt.step();
  }
  - @RunsIn(Tier.Services)
  public getRow(): any {
  return this._stmt.getRow();
  }
  @@ -102,5 +93,4 @@ export class ECSqlStatement implements IterableIterator<any> {
  public [Symbol.iterator](): IterableIterator<any> {
  return this;
  }
  -
  }
  