import { MySqlPreparedQueryConfig } from "../session.cjs";
import { MySqlRaw } from "../query-builders/raw.cjs";
import { MySqlAsyncPreparedQuery } from "./session.cjs";
import { entityKind } from "../../entity.cjs";
import { Query, SQL, SQLWrapper } from "../../sql/sql.cjs";
import { QueryPromise } from "../../query-promise.cjs";
import { RunnableQuery } from "../../runnable-query.cjs";

//#region src/mysql-core/async/raw.d.ts
interface MySqlAsyncRaw<TResult> extends QueryPromise<TResult>, RunnableQuery<TResult, 'mysql'>, SQLWrapper {}
declare class MySqlAsyncRaw<TResult> extends MySqlRaw<TResult> implements RunnableQuery<TResult, 'mysql'> {
  static readonly [entityKind]: string;
  readonly _: {
    readonly dialect: 'mysql';
    readonly result: TResult;
  };
  protected prepared: MySqlAsyncPreparedQuery<MySqlPreparedQueryConfig & {
    execute: TResult;
  }>;
  constructor(prepared: MySqlAsyncPreparedQuery<MySqlPreparedQueryConfig & {
    execute: TResult;
  }>, sql: SQL, query: Query);
  execute(placeholderValues?: Record<string, unknown>): Promise<TResult>;
  _prepare(): MySqlAsyncPreparedQuery<MySqlPreparedQueryConfig & {
    execute: TResult;
  }>;
}
//#endregion
export { MySqlAsyncRaw };
//# sourceMappingURL=raw.d.cts.map