Repository: sequelize/sequelize
File: packages/core/src/dialects/abstract/query-interface-typescript.ts (TypeScript)

Code before:
   *
   * **Note:** this is a schema in the [postgres sense of the word](http://www.postgresql.org/docs/9.1/static/ddl-schemas.html),
   * not a database table. In mysql and mariadb, this will show all databases.
   *
   * @param options
   *
   * @returns list of schemas
   */
  async listSchemas(options?: QiListSchemasOptions): Promise<string[]> {
    const showSchemasSql = this.queryGenerator.listSchemasQuery(options);
    const schemaNames = await this.sequelize.queryRaw<{ schema: string }>(showSchemasSql, {
      ...options,
      raw: true,
      type: QueryTypes.SELECT,
    });

    return schemaNames.map(schemaName => schemaName.schema);
  }

  /**
   * Show all defined schemas
   *
   * @deprecated Use {@link listSchemas} instead.
   * @param options
   */
  async showAllSchemas(options?: QueryRawOptions): Promise<string[]> {
    showAllToListSchemas();

    return this.listSchemas(options);
  }

  /**
   * Drop a table from database
   *
   * @param tableName Table name to drop
   * @param options   Query options
   */
  async dropTable(tableName: TableNameOrModel, options?: QiDropTableOptions): Promise<void> {
    const sql = this.queryGenerator.dropTableQuery(tableName, options);

    await this.sequelize.queryRaw(sql, options);
  }

  /**
   * Drop all tables
   *
   * @param options
   */
  async dropAllTables(options?: QiDropAllTablesOptions): Promise<void> {
    const skip = options?.skip || [];
    const allTables = await this.listTables(options);

Review comment (suggestion):
```suggestion
  async showAllSchemas(options?: QiListSchemasOptions): Promise<string[]> {
```

Code after:
   *
   * **Note:** this is a schema in the [postgres sense of the word](http://www.postgresql.org/docs/9.1/static/ddl-schemas.html),
   * not a database table. In mysql and mariadb, this will show all databases.
   *
   * @param options
   *
   * @returns list of schemas
   */
  async listSchemas(options?: QiListSchemasOptions): Promise<string[]> {
    const showSchemasSql = this.queryGenerator.listSchemasQuery(options);
    const schemaNames = await this.sequelize.queryRaw<{ schema: string }>(showSchemasSql, {
      ...options,
      raw: true,
      type: QueryTypes.SELECT,
    });

    return schemaNames.map(schemaName => schemaName.schema);
  }

  /**
   * Show all defined schemas
   *
   * @deprecated Use {@link listSchemas} instead.
   * @param options
   */
  async showAllSchemas(options?: QiListSchemasOptions): Promise<string[]> {
    showAllToListSchemas();

    return this.listSchemas(options);
  }

  /**
   * Drop a table from database
   *
   * @param tableName Table name to drop
   * @param options   Query options
   */
  async dropTable(tableName: TableNameOrModel, options?: QiDropTableOptions): Promise<void> {
    const sql = this.queryGenerator.dropTableQuery(tableName, options);

    await this.sequelize.queryRaw(sql, options);
  }

  /**
   * Drop all tables
   *
   * @param options
   */
  async dropAllTables(options?: QiDropAllTablesOptions): Promise<void> {
    const skip = options?.skip || [];
    const allTables = await this.listTables(options);