Home / File/ delete.ts — drizzle-orm Source File

delete.ts — drizzle-orm Source File

Architecture documentation for delete.ts, a typescript file in the drizzle-orm codebase. 19 imports, 0 dependents.

File typescript DrizzleORM QueryBuilders 19 imports 1 classes

Entity Profile

Dependency Diagram

graph LR
  bfd682c7_d1a3_f5aa_2d43_7e0859755bb8["delete.ts"]
  f4f42b4c_8610_03dd_fe01_232098668127["common.ts"]
  bfd682c7_d1a3_f5aa_2d43_7e0859755bb8 --> f4f42b4c_8610_03dd_fe01_232098668127
  ce49a5a3_688d_ddce_fd32_28428e51cae2["utils.ts"]
  bfd682c7_d1a3_f5aa_2d43_7e0859755bb8 --> ce49a5a3_688d_ddce_fd32_28428e51cae2
  0233f895_0081_faa0_ff5a_5f45a56e9cc3["extractUsedTable"]
  bfd682c7_d1a3_f5aa_2d43_7e0859755bb8 --> 0233f895_0081_faa0_ff5a_5f45a56e9cc3
  65d45edf_0d8a_b7f0_1780_573c12d9a0e6["select.types.ts"]
  bfd682c7_d1a3_f5aa_2d43_7e0859755bb8 --> 65d45edf_0d8a_b7f0_1780_573c12d9a0e6
  47a9c453_10f1_a759_6246_695fcce2b20a["types.ts"]
  bfd682c7_d1a3_f5aa_2d43_7e0859755bb8 --> 47a9c453_10f1_a759_6246_695fcce2b20a
  27705a9d_afe9_57dd_8c97_e52d8a67d426["entity.ts"]
  bfd682c7_d1a3_f5aa_2d43_7e0859755bb8 --> 27705a9d_afe9_57dd_8c97_e52d8a67d426
  65dc222f_bc11_439f_d65b_20d7052b24ec["dialect.ts"]
  bfd682c7_d1a3_f5aa_2d43_7e0859755bb8 --> 65dc222f_bc11_439f_d65b_20d7052b24ec
  0e227879_31b1_8596_726d_80119efbf846["session.ts"]
  bfd682c7_d1a3_f5aa_2d43_7e0859755bb8 --> 0e227879_31b1_8596_726d_80119efbf846
  17418917_ff81_c4e5_90f4_f37d557e5d51["table.ts"]
  bfd682c7_d1a3_f5aa_2d43_7e0859755bb8 --> 17418917_ff81_c4e5_90f4_f37d557e5d51
  d31ad410_b8fc_5d88_a194_70aa7419676a["query-builder.ts"]
  bfd682c7_d1a3_f5aa_2d43_7e0859755bb8 --> d31ad410_b8fc_5d88_a194_70aa7419676a
  8fb028b7_6ce0_27fa_29b6_39545ba11529["select.types.ts"]
  bfd682c7_d1a3_f5aa_2d43_7e0859755bb8 --> 8fb028b7_6ce0_27fa_29b6_39545ba11529
  6acf5c54_62a7_1da1_984a_7374cbb9983e["query-promise.ts"]
  bfd682c7_d1a3_f5aa_2d43_7e0859755bb8 --> 6acf5c54_62a7_1da1_984a_7374cbb9983e
  05d1039e_d7d0_0fa1_6f52_956655638080["runnable-query.ts"]
  bfd682c7_d1a3_f5aa_2d43_7e0859755bb8 --> 05d1039e_d7d0_0fa1_6f52_956655638080
  591617cf_1376_c0a1_4ba1_ecd59ca13a5b["selection-proxy.ts"]
  bfd682c7_d1a3_f5aa_2d43_7e0859755bb8 --> 591617cf_1376_c0a1_4ba1_ecd59ca13a5b
  style bfd682c7_d1a3_f5aa_2d43_7e0859755bb8 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

import type { WithCacheConfig } from '~/cache/core/types.ts';
import { entityKind } from '~/entity.ts';
import type { PgDialect } from '~/pg-core/dialect.ts';
import type {
	PgPreparedQuery,
	PgQueryResultHKT,
	PgQueryResultKind,
	PgSession,
	PreparedQueryConfig,
} from '~/pg-core/session.ts';
import type { PgTable } from '~/pg-core/table.ts';
import type { TypedQueryBuilder } from '~/query-builders/query-builder.ts';
import type { SelectResultFields } from '~/query-builders/select.types.ts';
import { QueryPromise } from '~/query-promise.ts';
import type { RunnableQuery } from '~/runnable-query.ts';
import { SelectionProxyHandler } from '~/selection-proxy.ts';
import type { ColumnsSelection, Query, SQL, SQLWrapper } from '~/sql/sql.ts';
import type { Subquery } from '~/subquery.ts';
import { getTableName, Table } from '~/table.ts';
import { tracer } from '~/tracing.ts';
import { type NeonAuthToken, orderSelectedFields } from '~/utils.ts';
import type { PgColumn } from '../columns/common.ts';
import { extractUsedTable } from '../utils.ts';
import type { SelectedFieldsFlat, SelectedFieldsOrdered } from './select.types.ts';

export type PgDeleteWithout<
	T extends AnyPgDeleteBase,
	TDynamic extends boolean,
	K extends keyof T & string,
> = TDynamic extends true ? T
	: Omit<
		PgDeleteBase<
			T['_']['table'],
			T['_']['queryResult'],
			T['_']['selectedFields'],
			T['_']['returning'],
			TDynamic,
			T['_']['excludedMethods'] | K
		>,
		T['_']['excludedMethods'] | K
	>;

export type PgDelete<
	TTable extends PgTable = PgTable,
	TQueryResult extends PgQueryResultHKT = PgQueryResultHKT,
	TSelectedFields extends ColumnsSelection | undefined = undefined,
	TReturning extends Record<string, unknown> | undefined = Record<string, unknown> | undefined,
> = PgDeleteBase<TTable, TQueryResult, TSelectedFields, TReturning, true, never>;

export interface PgDeleteConfig {
	where?: SQL | undefined;
	table: PgTable;
	returningFields?: SelectedFieldsFlat;
	returning?: SelectedFieldsOrdered;
	withList?: Subquery[];
}

export type PgDeleteReturningAll<
	T extends AnyPgDeleteBase,
	TDynamic extends boolean,
// ... (234 more lines)

Domain

Subdomains

Classes

Dependencies

Frequently Asked Questions

What does delete.ts do?
delete.ts is a source file in the drizzle-orm codebase, written in typescript. It belongs to the DrizzleORM domain, QueryBuilders subdomain.
What does delete.ts depend on?
delete.ts imports 19 module(s): common.ts, dialect.ts, entity.ts, extractUsedTable, query-builder.ts, query-promise.ts, runnable-query.ts, select.types.ts, and 11 more.
Where is delete.ts in the architecture?
delete.ts is located at drizzle-orm/src/pg-core/query-builders/delete.ts (domain: DrizzleORM, subdomain: QueryBuilders, directory: drizzle-orm/src/pg-core/query-builders).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free