from typing import Any

from django.db.backends.base.operations import (
    BaseDatabaseOperations as BaseDatabaseOperations,
)

class DatabaseOperations(BaseDatabaseOperations):
    integer_field_ranges: Any = ...
    set_operators: Any = ...
    cast_char_field_without_max_length: str = ...
    cast_data_types: Any = ...
    def cache_key_culling_sql(self) -> Any: ...
    def date_extract_sql(self, lookup_type: Any, field_name: Any) -> Any: ...
    def date_trunc_sql(self, lookup_type: Any, field_name: Any) -> Any: ...
    def datetime_cast_date_sql(self, field_name: Any, tzname: Any) -> Any: ...
    def datetime_cast_time_sql(self, field_name: Any, tzname: Any) -> Any: ...
    def datetime_extract_sql(
        self, lookup_type: Any, field_name: Any, tzname: Any
    ) -> Any: ...
    def datetime_trunc_sql(
        self, lookup_type: Any, field_name: Any, tzname: Any
    ) -> Any: ...
    def time_trunc_sql(self, lookup_type: Any, field_name: Any) -> Any: ...
    def get_db_converters(self, expression: Any) -> Any: ...
    def convert_textfield_value(
        self, value: Any, expression: Any, connection: Any
    ) -> Any: ...
    def convert_binaryfield_value(
        self, value: Any, expression: Any, connection: Any
    ) -> Any: ...
    def convert_booleanfield_value(
        self, value: Any, expression: Any, connection: Any
    ) -> Any: ...
    def convert_datetimefield_value(
        self, value: Any, expression: Any, connection: Any
    ) -> Any: ...
    def convert_datefield_value(
        self, value: Any, expression: Any, connection: Any
    ) -> Any: ...
    def convert_timefield_value(
        self, value: Any, expression: Any, connection: Any
    ) -> Any: ...
    def convert_uuidfield_value(
        self, value: Any, expression: Any, connection: Any
    ) -> Any: ...
    @staticmethod
    def convert_empty_string(value: Any, expression: Any, connection: Any) -> Any: ...
    @staticmethod
    def convert_empty_bytes(value: Any, expression: Any, connection: Any) -> Any: ...
    def deferrable_sql(self) -> Any: ...
    def fetch_returned_insert_columns(
        self, cursor: Any, returning_params: Any
    ) -> Any: ...
    def field_cast_sql(self, db_type: Any, internal_type: Any) -> Any: ...
    def no_limit_value(self) -> None: ...
    def limit_offset_sql(self, low_mark: Any, high_mark: Any) -> Any: ...
    def last_executed_query(self, cursor: Any, sql: Any, params: Any) -> Any: ...
    def last_insert_id(self, cursor: Any, table_name: Any, pk_name: Any) -> Any: ...
    def lookup_cast(self, lookup_type: Any, internal_type: Any | None = ...) -> Any: ...
    def max_in_list_size(self) -> Any: ...
    def max_name_length(self) -> Any: ...
    def pk_default_value(self) -> Any: ...
    def prep_for_iexact_query(self, x: Any) -> Any: ...
    def process_clob(self, value: Any) -> Any: ...
    def quote_name(self, name: Any) -> Any: ...
    def random_function_sql(self) -> Any: ...
    def regex_lookup(self, lookup_type: Any) -> Any: ...
    def return_insert_columns(self, fields: Any) -> Any: ...
    def sequence_reset_by_name_sql(self, style: Any, sequences: Any) -> Any: ...
    def sequence_reset_sql(self, style: Any, model_list: Any) -> Any: ...
    def start_transaction_sql(self) -> Any: ...
    def tablespace_sql(self, tablespace: Any, inline: bool = ...) -> Any: ...
    def adapt_datefield_value(self, value: Any) -> Any: ...
    def adapt_datetimefield_value(self, value: Any) -> Any: ...
    def adapt_timefield_value(self, value: Any) -> Any: ...
    def combine_expression(self, connector: Any, sub_expressions: Any) -> Any: ...
    def bulk_insert_sql(self, fields: Any, placeholder_rows: Any) -> Any: ...
    def subtract_temporals(self, internal_type: Any, lhs: Any, rhs: Any) -> Any: ...
    def bulk_batch_size(self, fields: Any, objs: Any) -> Any: ...
    def conditional_expression_supported_in_where_clause(
        self, expression: Any
    ) -> Any: ...
