/* tslint:disable */
/* eslint-disable */
export function init_console_tracing(): void;
export function init_panic_handler(): void;
export class IntoUnderlyingByteSource {
  private constructor();
  free(): void;
  start(controller: ReadableByteStreamController): void;
  pull(controller: ReadableByteStreamController): Promise<any>;
  cancel(): void;
  readonly type: string;
  readonly autoAllocateChunkSize: number;
}
export class IntoUnderlyingSink {
  private constructor();
  free(): void;
  write(chunk: any): Promise<any>;
  close(): Promise<any>;
  abort(reason: any): Promise<any>;
}
export class IntoUnderlyingSource {
  private constructor();
  free(): void;
  pull(controller: ReadableStreamDefaultController): Promise<any>;
  cancel(): void;
}
export class WasmQueryResult {
  private constructor();
  free(): void;
}
/**
 * Wrapper around result tables.
 *
 * This intermediate type is needed since wasm_bindgen can't generate the
 * appropriate type for `Result<Vec<T>, E>`, otherwise we'd just return these
 * tables directly.
 */
export class WasmQueryResults {
  private constructor();
  free(): void;
}
export class WasmSession {
  private constructor();
  free(): void;
  static try_new(): WasmSession;
  query(_sql: string): Promise<WasmQueryResults>;
  register_file(name: string, _content: Uint8Array): void;
  /**
   * Return a list of registered file names.
   *
   * Names will be sorted alphabetically.
   */
  list_local_files(): string[];
  connect_hybrid(_connection_string: string): Promise<void>;
  version(): string;
}
/**
 * Wrapper around a database session and the engine that created it.
 *
 * This is expected to be instantiated on the javascript side.
 */
export class WasmShell {
  private constructor();
  free(): void;
  /**
   * Create a new shell that writes its output to the provided terminal.
   */
  static try_new(terminal: any): WasmShell;
  /**
   * Notify on terminal resize.
   */
  on_resize(cols: number): void;
  /**
   * Consume a string verbatim.
   */
  on_data(text: string): void;
  /**
   * Consume a keyboard event.
   *
   * This should be hooked up to xterm's `attachCustomKeyEventHandler`. This
   * will handle _all_ input, so `false` should be returned to xterm after
   * calling this for an event.
   */
  on_key(event: KeyboardEvent): void;
}
