From fd258ff3c6742250e528ae6fcf4674f0eb7a0991 Mon Sep 17 00:00:00 2001 From: Leo5878 Date: Sun, 30 Nov 2025 19:29:07 +0300 Subject: [PATCH 1/7] Replace any with unknown # Conflicts: # src/ts_generator/sql_parser/expressions/translate_expr.rs --- .../expressions/translate_data_type.rs | 10 +-- .../sql_parser/expressions/translate_expr.rs | 26 ++++---- src/ts_generator/types/ts_query.rs | 65 +++++++++++++++++-- 3 files changed, 77 insertions(+), 24 deletions(-) diff --git a/src/ts_generator/sql_parser/expressions/translate_data_type.rs b/src/ts_generator/sql_parser/expressions/translate_data_type.rs index 5e6948ff..dfeb311a 100644 --- a/src/ts_generator/sql_parser/expressions/translate_data_type.rs +++ b/src/ts_generator/sql_parser/expressions/translate_data_type.rs @@ -138,7 +138,7 @@ pub fn translate_data_type(data_type: &DataType) -> TsFieldType { DataType::Datetime64(_, _) => TsFieldType::Date, DataType::Timestamp(_, _) => TsFieldType::String, DataType::TimestampNtz => TsFieldType::String, - DataType::Interval { .. } => TsFieldType::Any, + DataType::Interval { .. } => TsFieldType::Unknown, // JSON types DataType::JSON => TsFieldType::Object, @@ -151,9 +151,9 @@ pub fn translate_data_type(data_type: &DataType) -> TsFieldType { DataType::TsQuery => TsFieldType::String, // Complex types - DataType::Custom(_, _) => TsFieldType::Any, + DataType::Custom(_, _) => TsFieldType::Unknown, DataType::Array(array_element_type_def) => match array_element_type_def { - sqlparser::ast::ArrayElemTypeDef::None => TsFieldType::Array(Box::new(TsFieldType::Any)), + sqlparser::ast::ArrayElemTypeDef::None => TsFieldType::Array(Box::new(TsFieldType::Unknown)), sqlparser::ast::ArrayElemTypeDef::AngleBracket(data_type) => { TsFieldType::Array(Box::new(translate_data_type(data_type))) } @@ -177,8 +177,8 @@ pub fn translate_data_type(data_type: &DataType) -> TsFieldType { DataType::LowCardinality(inner_type) => translate_data_type(inner_type), // Special types - DataType::Unspecified => TsFieldType::Any, - DataType::Trigger => TsFieldType::Any, + DataType::Unspecified => TsFieldType::Unknown, + DataType::Trigger => TsFieldType::Unknown, DataType::AnyType => TsFieldType::Any, } } diff --git a/src/ts_generator/sql_parser/expressions/translate_expr.rs b/src/ts_generator/sql_parser/expressions/translate_expr.rs index 1e076fb3..411c189e 100644 --- a/src/ts_generator/sql_parser/expressions/translate_expr.rs +++ b/src/ts_generator/sql_parser/expressions/translate_expr.rs @@ -485,13 +485,13 @@ pub async fn translate_expr( ts_query.insert_param(&inferred_type, &false, &Some(placeholder.to_string())) } Expr::JsonAccess { value: _, path: _ } => { - ts_query.insert_result(alias, &[TsFieldType::Any], is_selection, false, expr_for_logging)?; - ts_query.insert_param(&TsFieldType::Any, &false, &None) + ts_query.insert_result(alias, &[TsFieldType::Unknown], is_selection, false, expr_for_logging)?; + ts_query.insert_param(&TsFieldType::Unknown, &false, &None) } Expr::IsNotDistinctFrom(_, placeholder) | Expr::IsDistinctFrom(_, placeholder) => { // IsDistinctFrom and IsNotDistinctFrom are the same and can have a placeholder ts_query.insert_param(&TsFieldType::String, &false, &Some(placeholder.to_string()))?; - ts_query.insert_result(alias, &[TsFieldType::Any], is_selection, false, expr_for_logging) + ts_query.insert_result(alias, &[TsFieldType::Unknown], is_selection, false, expr_for_logging) } Expr::SimilarTo { negated: _, @@ -577,10 +577,10 @@ pub async fn translate_expr( ts_query.insert_result(alias, &[TsFieldType::String], is_selection, false, expr_for_logging) } Expr::Collate { expr: _, collation: _ } => { - ts_query.insert_result(alias, &[TsFieldType::Any], is_selection, false, expr_for_logging) + ts_query.insert_result(alias, &[TsFieldType::Unknown], is_selection, false, expr_for_logging) } - Expr::TypedString(_) => ts_query.insert_result(alias, &[TsFieldType::Any], is_selection, false, expr_for_logging), - Expr::Map(_) => ts_query.insert_result(alias, &[TsFieldType::Any], is_selection, false, expr_for_logging), + Expr::TypedString(_) => ts_query.insert_result(alias, &[TsFieldType::Unknown], is_selection, false, expr_for_logging), + Expr::Map(_) => ts_query.insert_result(alias, &[TsFieldType::Unknown], is_selection, false, expr_for_logging), // Note: AggregateExpressionWithFilter was removed in sqlparser 0.59.0 // Aggregate functions with filters are now part of the Function variant Expr::Case { @@ -589,7 +589,7 @@ pub async fn translate_expr( else_result: _, case_token: _, end_token: _, - } => ts_query.insert_result(alias, &[TsFieldType::Any], is_selection, false, expr_for_logging), + } => ts_query.insert_result(alias, &[TsFieldType::Unknown], is_selection, false, expr_for_logging), Expr::Exists { subquery, negated: _ } => { ts_query.insert_result(alias, &[TsFieldType::Boolean], is_selection, false, expr_for_logging)?; translate_query(ts_query, &None, subquery, db_conn, alias, false).await @@ -597,14 +597,14 @@ pub async fn translate_expr( // Note: ListAgg and ArrayAgg were removed in sqlparser 0.59.0 // They are now represented as Function variants Expr::GroupingSets(_) | Expr::Cube(_) | Expr::Rollup(_) | Expr::Tuple(_) | Expr::Array(_) => { - ts_query.insert_result(alias, &[TsFieldType::Any], is_selection, false, expr_for_logging) + ts_query.insert_result(alias, &[TsFieldType::Unknown], is_selection, false, expr_for_logging) } // Note: ArrayIndex was replaced with CompoundFieldAccess in sqlparser 0.59.0 // CompoundFieldAccess handles array indexing, map access, and composite field access Expr::CompoundFieldAccess { root: _, access_chain: _, - } => ts_query.insert_result(alias, &[TsFieldType::Any], is_selection, false, expr_for_logging), + } => ts_query.insert_result(alias, &[TsFieldType::Unknown], is_selection, false, expr_for_logging), Expr::Interval(_) => ts_query.insert_result(alias, &[TsFieldType::Number], is_selection, false, expr_for_logging), Expr::MatchAgainst { columns: _, @@ -680,7 +680,7 @@ pub async fn translate_expr( FunctionArguments::List(arg_list) => &arg_list.args, _ => { // If no arguments or subquery, return Any - return ts_query.insert_result(Some(alias), &[TsFieldType::Any], is_selection, false, expr_for_logging); + return ts_query.insert_result(Some(alias), &[TsFieldType::Unknown], is_selection, false, expr_for_logging); } }; @@ -723,7 +723,7 @@ pub async fn translate_expr( expr_for_logging, )?; } else { - ts_query.insert_result(Some(alias), &[TsFieldType::Any], is_selection, false, expr_for_logging)?; + ts_query.insert_result(Some(alias), &[TsFieldType::Unknown], is_selection, false, expr_for_logging)?; } Ok(()) @@ -756,8 +756,8 @@ pub async fn translate_expr( expr: _, array_expr: _, negated: _, - } => ts_query.insert_result(alias, &[TsFieldType::Any], is_selection, false, expr_for_logging), - _ => ts_query.insert_result(alias, &[TsFieldType::Any], is_selection, false, expr_for_logging), + } => ts_query.insert_result(alias, &[TsFieldType::Unknown], is_selection, false, expr_for_logging), + _ => ts_query.insert_result(alias, &[TsFieldType::Unknown], is_selection, false, expr_for_logging), } } diff --git a/src/ts_generator/types/ts_query.rs b/src/ts_generator/types/ts_query.rs index 02f0e56d..7348acee 100644 --- a/src/ts_generator/types/ts_query.rs +++ b/src/ts_generator/types/ts_query.rs @@ -116,6 +116,7 @@ pub enum TsFieldType { Null, Enum(Vec), Any, + Unknown, #[allow(dead_code)] Array2D(Array2DContent), Array(Box), @@ -149,6 +150,7 @@ impl fmt::Display for TsFieldType { TsFieldType::Any => write!(f, "any"), TsFieldType::Null => write!(f, "null"), TsFieldType::Never => write!(f, "never"), + TsFieldType::Unknown => write!(f, "unknown"), TsFieldType::Array(ts_field_type) => { let ts_field_type = ts_field_type.clone(); let ts_field_type = *ts_field_type; @@ -201,7 +203,7 @@ impl TsFieldType { "character" | "character varying" | "bytea" | "uuid" | "text" => Self::String, "boolean" => Self::Boolean, "json" | "jsonb" => Self::Object, - "ARRAY" | "array" => Self::Any, + "ARRAY" | "array" => Self::Unknown, "date" => Self::Date, "USER-DEFINED" => { if let Some(enum_values) = enum_values { @@ -209,9 +211,9 @@ impl TsFieldType { } let warning_message = format!("Failed to find enum values for field {field_name} of table {table_name}"); warning!(warning_message); - Self::Any + Self::Unknown } - _ => Self::Any, + _ => Self::Unknown, } } @@ -234,9 +236,9 @@ impl TsFieldType { let warning_message = format!("Failed to find enum values for field {field_name} of table {table_name}"); warning!(warning_message); - Self::Any + Self::Unknown } - _ => Self::Any, + _ => Self::Unknown, } } @@ -252,7 +254,56 @@ impl TsFieldType { } else if annotated_type == "null" { return Self::Null; } - Self::Any + Self::Unknown + } + + /// Converts a sqlparser DataType from table alias column definitions to TsFieldType + /// This is used to infer types from table-valued function aliases like: + /// `jsonb_to_recordset($1) AS t(id INT, name TEXT)` + pub fn from_sqlparser_datatype(data_type: &sqlparser::ast::DataType) -> Self { + use sqlparser::ast::DataType; + + match data_type { + // Integer types + DataType::SmallInt(_) | DataType::SmallIntUnsigned(_) | + DataType::Int(_) | DataType::Int2(_) | DataType::Int4(_) | DataType::Int8(_) | + DataType::Integer(_) | DataType::IntUnsigned(_) | DataType::IntegerUnsigned(_) | + DataType::BigInt(_) | DataType::BigIntUnsigned(_) | + DataType::TinyInt(_) | DataType::TinyIntUnsigned(_) | + DataType::MediumInt(_) | DataType::MediumIntUnsigned(_) | + DataType::Int16 | DataType::Int32 | DataType::Int64 | DataType::Int128 | DataType::Int256 | + DataType::UInt8 | DataType::UInt16 | DataType::UInt32 | DataType::UInt64 | DataType::UInt128 | DataType::UInt256 | + // Floating point types + DataType::Real | DataType::Float(_) | DataType::Float4 | DataType::Float8 | + DataType::Double(_) | DataType::DoublePrecision | DataType::Float64 | + DataType::Decimal(_) | DataType::Dec(_) | DataType::Numeric(_) | + DataType::BigNumeric(_) | DataType::BigDecimal(_) => Self::Number, + + // String types + DataType::Character(_) | DataType::Char(_) | + DataType::CharacterVarying(_) | DataType::CharVarying(_) | + DataType::Varchar(_) | DataType::Nvarchar(_) | + DataType::Text | DataType::String(_) | + DataType::Uuid | + DataType::Bytea | DataType::Binary(_) | DataType::Varbinary(_) | + DataType::Blob(_) | DataType::Clob(_) => Self::String, + + // Boolean type + DataType::Boolean | DataType::Bool => Self::Boolean, + + // JSON types + DataType::JSON | DataType::JSONB => Self::Object, + + // Date/Time types + DataType::Date | DataType::Datetime(_) | DataType::Timestamp(_, _) | + DataType::Time(_, _) => Self::Date, + + // Array types + DataType::Array(_) => Self::Any, + + // Everything else defaults to Any + _ => Self::Any, + } } /// Converts a sqlparser DataType from table alias column definitions to TsFieldType @@ -574,6 +625,8 @@ impl fmt::Display for TsQuery { let query = format!("export interface I{name}Query {{\n\tparams: {name}Params;\n\tresult: I{name}Result;\n}}"); + // let jenericResult = format!("export interface I{name}Results {{\n\t{result_str}\n}}"); + let final_code = format!("{params}\n\n{result}\n\n{query}"); writeln!(f, "{final_code}") From 9cf2f969f70c162f08bd42b4334fe7335e44d7b2 Mon Sep 17 00:00:00 2001 From: Leo5878 Date: Sun, 30 Nov 2025 20:22:58 +0300 Subject: [PATCH 2/7] Remove unnecessary --- src/ts_generator/types/ts_query.rs | 51 ------------------------------ 1 file changed, 51 deletions(-) diff --git a/src/ts_generator/types/ts_query.rs b/src/ts_generator/types/ts_query.rs index 7348acee..65e2a756 100644 --- a/src/ts_generator/types/ts_query.rs +++ b/src/ts_generator/types/ts_query.rs @@ -305,55 +305,6 @@ impl TsFieldType { _ => Self::Any, } } - - /// Converts a sqlparser DataType from table alias column definitions to TsFieldType - /// This is used to infer types from table-valued function aliases like: - /// `jsonb_to_recordset($1) AS t(id INT, name TEXT)` - pub fn from_sqlparser_datatype(data_type: &sqlparser::ast::DataType) -> Self { - use sqlparser::ast::DataType; - - match data_type { - // Integer types - DataType::SmallInt(_) | DataType::SmallIntUnsigned(_) | - DataType::Int(_) | DataType::Int2(_) | DataType::Int4(_) | DataType::Int8(_) | - DataType::Integer(_) | DataType::IntUnsigned(_) | DataType::IntegerUnsigned(_) | - DataType::BigInt(_) | DataType::BigIntUnsigned(_) | - DataType::TinyInt(_) | DataType::TinyIntUnsigned(_) | - DataType::MediumInt(_) | DataType::MediumIntUnsigned(_) | - DataType::Int16 | DataType::Int32 | DataType::Int64 | DataType::Int128 | DataType::Int256 | - DataType::UInt8 | DataType::UInt16 | DataType::UInt32 | DataType::UInt64 | DataType::UInt128 | DataType::UInt256 | - // Floating point types - DataType::Real | DataType::Float(_) | DataType::Float4 | DataType::Float8 | - DataType::Double(_) | DataType::DoublePrecision | DataType::Float64 | - DataType::Decimal(_) | DataType::Dec(_) | DataType::Numeric(_) | - DataType::BigNumeric(_) | DataType::BigDecimal(_) => Self::Number, - - // String types - DataType::Character(_) | DataType::Char(_) | - DataType::CharacterVarying(_) | DataType::CharVarying(_) | - DataType::Varchar(_) | DataType::Nvarchar(_) | - DataType::Text | DataType::String(_) | - DataType::Uuid | - DataType::Bytea | DataType::Binary(_) | DataType::Varbinary(_) | - DataType::Blob(_) | DataType::Clob(_) => Self::String, - - // Boolean type - DataType::Boolean | DataType::Bool => Self::Boolean, - - // JSON types - DataType::JSON | DataType::JSONB => Self::Object, - - // Date/Time types - DataType::Date | DataType::Datetime(_) | DataType::Timestamp(_, _) | - DataType::Time(_, _) => Self::Date, - - // Array types - DataType::Array(_) => Self::Any, - - // Everything else defaults to Any - _ => Self::Any, - } - } } /// TsQuery holds information required to generate typescript type definition @@ -625,8 +576,6 @@ impl fmt::Display for TsQuery { let query = format!("export interface I{name}Query {{\n\tparams: {name}Params;\n\tresult: I{name}Result;\n}}"); - // let jenericResult = format!("export interface I{name}Results {{\n\t{result_str}\n}}"); - let final_code = format!("{params}\n\n{result}\n\n{query}"); writeln!(f, "{final_code}") From 41b26a79f03ee2f8d743d924d5be73f8938e630b Mon Sep 17 00:00:00 2001 From: Leo5878 Date: Mon, 9 Feb 2026 18:49:42 +0300 Subject: [PATCH 3/7] Update tests --- .../basic_aggregates.queries.ts | 4 ++-- .../basic_aggregates.snapshot.ts | 4 ++-- .../case_expressions/case_in_clauses.queries.ts | 2 +- .../case_expressions/case_in_clauses.snapshot.ts | 2 +- tests/demo/case_expressions/nested_case.queries.ts | 4 ++-- .../demo/case_expressions/nested_case.snapshot.ts | 4 ++-- .../demo/case_expressions/searched_case.queries.ts | 6 +++--- .../case_expressions/searched_case.snapshot.ts | 6 +++--- tests/demo/case_expressions/simple_case.queries.ts | 8 ++++---- .../demo/case_expressions/simple_case.snapshot.ts | 8 ++++---- .../datetime_functions/date_functions.queries.ts | 2 +- .../datetime_functions/date_functions.snapshot.ts | 2 +- .../datetime_functions/time_functions.queries.ts | 8 ++++---- .../datetime_functions/time_functions.snapshot.ts | 8 ++++---- tests/demo/select/no-default-table.queries.ts | 10 +++++----- tests/demo/select/no-default-table.snapshot.ts | 10 +++++----- tests/demo/select/select.queries.ts | 2 +- tests/demo/select/select.snapshot.ts | 2 +- tests/demo/typescript/expression/as_const.ts | 2 +- tests/demo/typescript/expression/types.ts | 4 ++-- .../demo_json/postgres/array_operations.queries.ts | 14 +++++++------- .../postgres/array_operations.snapshot.ts | 14 +++++++------- tests/demo_json/postgres/array_operations.ts | 6 +++--- 23 files changed, 66 insertions(+), 66 deletions(-) diff --git a/tests/demo/aggregate_functions/basic_aggregates.queries.ts b/tests/demo/aggregate_functions/basic_aggregates.queries.ts index 132928b7..189ad24d 100644 --- a/tests/demo/aggregate_functions/basic_aggregates.queries.ts +++ b/tests/demo/aggregate_functions/basic_aggregates.queries.ts @@ -45,8 +45,8 @@ export type StddevAndVarianceParams = []; export interface IStddevAndVarianceResult { rarity: string | null; - stddevId: any; - varianceId: any; + stddevId: unknown; + varianceId: unknown; } export interface IStddevAndVarianceQuery { diff --git a/tests/demo/aggregate_functions/basic_aggregates.snapshot.ts b/tests/demo/aggregate_functions/basic_aggregates.snapshot.ts index 09b50977..9b2bbf3f 100644 --- a/tests/demo/aggregate_functions/basic_aggregates.snapshot.ts +++ b/tests/demo/aggregate_functions/basic_aggregates.snapshot.ts @@ -45,8 +45,8 @@ export type StddevAndVarianceParams = []; export interface IStddevAndVarianceResult { rarity: string | null; - stddevId: any; - varianceId: any; + stddevId: unknown; + varianceId: unknown; } export interface IStddevAndVarianceQuery { diff --git a/tests/demo/case_expressions/case_in_clauses.queries.ts b/tests/demo/case_expressions/case_in_clauses.queries.ts index fc815992..4f1f6e58 100644 --- a/tests/demo/case_expressions/case_in_clauses.queries.ts +++ b/tests/demo/case_expressions/case_in_clauses.queries.ts @@ -28,7 +28,7 @@ export type CaseInGroupByHavingParams = []; export interface ICaseInGroupByHavingResult { count: number; - rarityGroup: any; + rarityGroup: unknown; } export interface ICaseInGroupByHavingQuery { diff --git a/tests/demo/case_expressions/case_in_clauses.snapshot.ts b/tests/demo/case_expressions/case_in_clauses.snapshot.ts index fc02d165..4bb7203a 100644 --- a/tests/demo/case_expressions/case_in_clauses.snapshot.ts +++ b/tests/demo/case_expressions/case_in_clauses.snapshot.ts @@ -28,7 +28,7 @@ export type CaseInGroupByHavingParams = []; export interface ICaseInGroupByHavingResult { count: number; - rarityGroup: any; + rarityGroup: unknown; } export interface ICaseInGroupByHavingQuery { diff --git a/tests/demo/case_expressions/nested_case.queries.ts b/tests/demo/case_expressions/nested_case.queries.ts index 73844a62..d3c396a2 100644 --- a/tests/demo/case_expressions/nested_case.queries.ts +++ b/tests/demo/case_expressions/nested_case.queries.ts @@ -1,7 +1,7 @@ export type NestedCaseBasicParams = []; export interface INestedCaseBasicResult { - detailedRarity: any; + detailedRarity: unknown; id: number; name: string; rarity: string | null; @@ -17,7 +17,7 @@ export type NestedCaseMultipleLevelsParams = []; export interface INestedCaseMultipleLevelsResult { id: number; name: string; - tier: any; + tier: unknown; } export interface INestedCaseMultipleLevelsQuery { diff --git a/tests/demo/case_expressions/nested_case.snapshot.ts b/tests/demo/case_expressions/nested_case.snapshot.ts index 1a693ae3..4ecb2508 100644 --- a/tests/demo/case_expressions/nested_case.snapshot.ts +++ b/tests/demo/case_expressions/nested_case.snapshot.ts @@ -1,7 +1,7 @@ export type NestedCaseBasicParams = []; export interface INestedCaseBasicResult { - detailedRarity: any; + detailedRarity: unknown; id: number; name: string; rarity: string | null; @@ -17,7 +17,7 @@ export type NestedCaseMultipleLevelsParams = []; export interface INestedCaseMultipleLevelsResult { id: number; name: string; - tier: any; + tier: unknown; } export interface INestedCaseMultipleLevelsQuery { diff --git a/tests/demo/case_expressions/searched_case.queries.ts b/tests/demo/case_expressions/searched_case.queries.ts index b83e8e6f..eae425a0 100644 --- a/tests/demo/case_expressions/searched_case.queries.ts +++ b/tests/demo/case_expressions/searched_case.queries.ts @@ -2,7 +2,7 @@ export type SearchedCaseBasicParams = []; export interface ISearchedCaseBasicResult { id: number; - idCategory: any; + idCategory: unknown; name: string; } @@ -15,7 +15,7 @@ export type SearchedCaseMultipleConditionsParams = []; export interface ISearchedCaseMultipleConditionsResult { id: number; - itemClass: any; + itemClass: unknown; name: string; rarity: string | null; } @@ -30,7 +30,7 @@ export type SearchedCaseWithParamsParams = []; export interface ISearchedCaseWithParamsResult { id: number; name: string; - thresholdStatus: any; + thresholdStatus: unknown; } export interface ISearchedCaseWithParamsQuery { diff --git a/tests/demo/case_expressions/searched_case.snapshot.ts b/tests/demo/case_expressions/searched_case.snapshot.ts index 74d61e67..a648ec6c 100644 --- a/tests/demo/case_expressions/searched_case.snapshot.ts +++ b/tests/demo/case_expressions/searched_case.snapshot.ts @@ -2,7 +2,7 @@ export type SearchedCaseBasicParams = []; export interface ISearchedCaseBasicResult { id: number; - idCategory: any; + idCategory: unknown; name: string; } @@ -15,7 +15,7 @@ export type SearchedCaseMultipleConditionsParams = []; export interface ISearchedCaseMultipleConditionsResult { id: number; - itemClass: any; + itemClass: unknown; name: string; rarity: string | null; } @@ -30,7 +30,7 @@ export type SearchedCaseWithParamsParams = []; export interface ISearchedCaseWithParamsResult { id: number; name: string; - thresholdStatus: any; + thresholdStatus: unknown; } export interface ISearchedCaseWithParamsQuery { diff --git a/tests/demo/case_expressions/simple_case.queries.ts b/tests/demo/case_expressions/simple_case.queries.ts index 072984cd..b08db50d 100644 --- a/tests/demo/case_expressions/simple_case.queries.ts +++ b/tests/demo/case_expressions/simple_case.queries.ts @@ -3,7 +3,7 @@ export type SimpleCaseBasicParams = []; export interface ISimpleCaseBasicResult { id: number; name: string; - rarityCode: any; + rarityCode: unknown; } export interface ISimpleCaseBasicQuery { @@ -16,7 +16,7 @@ export type SimpleCaseWithNullParams = []; export interface ISimpleCaseWithNullResult { id: number; name: string; - rarityLevel: any; + rarityLevel: unknown; } export interface ISimpleCaseWithNullQuery { @@ -28,9 +28,9 @@ export type MultipleCaseExpressionsParams = []; export interface IMultipleCaseExpressionsResult { id: number; - idRange: any; + idRange: unknown; name: string; - rarityTier: any; + rarityTier: unknown; } export interface IMultipleCaseExpressionsQuery { diff --git a/tests/demo/case_expressions/simple_case.snapshot.ts b/tests/demo/case_expressions/simple_case.snapshot.ts index afcae4b9..307fa0d2 100644 --- a/tests/demo/case_expressions/simple_case.snapshot.ts +++ b/tests/demo/case_expressions/simple_case.snapshot.ts @@ -3,7 +3,7 @@ export type SimpleCaseBasicParams = []; export interface ISimpleCaseBasicResult { id: number; name: string; - rarityCode: any; + rarityCode: unknown; } export interface ISimpleCaseBasicQuery { @@ -16,7 +16,7 @@ export type SimpleCaseWithNullParams = []; export interface ISimpleCaseWithNullResult { id: number; name: string; - rarityLevel: any; + rarityLevel: unknown; } export interface ISimpleCaseWithNullQuery { @@ -28,9 +28,9 @@ export type MultipleCaseExpressionsParams = []; export interface IMultipleCaseExpressionsResult { id: number; - idRange: any; + idRange: unknown; name: string; - rarityTier: any; + rarityTier: unknown; } export interface IMultipleCaseExpressionsQuery { diff --git a/tests/demo/datetime_functions/date_functions.queries.ts b/tests/demo/datetime_functions/date_functions.queries.ts index de63b1a9..e2e15d3b 100644 --- a/tests/demo/datetime_functions/date_functions.queries.ts +++ b/tests/demo/datetime_functions/date_functions.queries.ts @@ -59,7 +59,7 @@ export interface IAgeFunctionQuery { export type DateArithmeticParams = []; export interface IDateArithmeticResult { - createdAt: any | null; + createdAt: unknown | null; id: number; name: string; oneMonthAgo: number; diff --git a/tests/demo/datetime_functions/date_functions.snapshot.ts b/tests/demo/datetime_functions/date_functions.snapshot.ts index 6b90b726..4bb7f773 100644 --- a/tests/demo/datetime_functions/date_functions.snapshot.ts +++ b/tests/demo/datetime_functions/date_functions.snapshot.ts @@ -59,7 +59,7 @@ export interface IAgeFunctionQuery { export type DateArithmeticParams = []; export interface IDateArithmeticResult { - createdAt: any | null; + createdAt: unknown | null; id: number; name: string; oneMonthAgo: number; diff --git a/tests/demo/datetime_functions/time_functions.queries.ts b/tests/demo/datetime_functions/time_functions.queries.ts index f81a465d..672ce3d2 100644 --- a/tests/demo/datetime_functions/time_functions.queries.ts +++ b/tests/demo/datetime_functions/time_functions.queries.ts @@ -16,8 +16,8 @@ export type TimeComparisonParams = []; export interface ITimeComparisonResult { id: number; - loginTime: any | null; - logoutTime: any | null; + loginTime: unknown | null; + logoutTime: unknown | null; name: string; } @@ -29,7 +29,7 @@ export interface ITimeComparisonQuery { export type IntervalOperationsParams = []; export interface IIntervalOperationsResult { - createdAt: any | null; + createdAt: unknown | null; id: number; name: string; oneHourLater: number; @@ -46,7 +46,7 @@ export type DateDifferenceParams = []; export interface IDateDifferenceResult { id: number; name: string; - sessionDuration: any | null; + sessionDuration: unknown | null; } export interface IDateDifferenceQuery { diff --git a/tests/demo/datetime_functions/time_functions.snapshot.ts b/tests/demo/datetime_functions/time_functions.snapshot.ts index 1b429a85..f6c1d6aa 100644 --- a/tests/demo/datetime_functions/time_functions.snapshot.ts +++ b/tests/demo/datetime_functions/time_functions.snapshot.ts @@ -16,8 +16,8 @@ export type TimeComparisonParams = []; export interface ITimeComparisonResult { id: number; - loginTime: any | null; - logoutTime: any | null; + loginTime: unknown | null; + logoutTime: unknown | null; name: string; } @@ -29,7 +29,7 @@ export interface ITimeComparisonQuery { export type IntervalOperationsParams = []; export interface IIntervalOperationsResult { - createdAt: any | null; + createdAt: unknown | null; id: number; name: string; oneHourLater: number; @@ -46,7 +46,7 @@ export type DateDifferenceParams = []; export interface IDateDifferenceResult { id: number; name: string; - sessionDuration: any | null; + sessionDuration: unknown | null; } export interface IDateDifferenceQuery { diff --git a/tests/demo/select/no-default-table.queries.ts b/tests/demo/select/no-default-table.queries.ts index f78500bb..a1e34f19 100644 --- a/tests/demo/select/no-default-table.queries.ts +++ b/tests/demo/select/no-default-table.queries.ts @@ -69,10 +69,10 @@ export interface IAllStringsResult { extractMonth1: Date; extractSecond1: Date; extractYear1: Date; - jsonArray1: any; + jsonArray1: unknown; jsonBuildObject1: { key: string }; jsonExtractPathText1: string; - jsonbArray1: any; + jsonbArray1: unknown; jsonbBuildObject1: { key: string }; jsonbExtractPathText1: string; left1: string; @@ -84,7 +84,7 @@ export interface IAllStringsResult { now1: string; octetLength1: string; position1: number; - random1: any; + random1: unknown; repeat1: string; replace1: string; reverse1: string; @@ -96,8 +96,8 @@ export interface IAllStringsResult { substring1: string; toChar1: string; toDate1: string; - toJson1: any; - toJsonb1: any; + toJson1: unknown; + toJsonb1: unknown; toTimestamp1: string; trim1: string; upper1: string; diff --git a/tests/demo/select/no-default-table.snapshot.ts b/tests/demo/select/no-default-table.snapshot.ts index dc0b75dd..c85dfa33 100644 --- a/tests/demo/select/no-default-table.snapshot.ts +++ b/tests/demo/select/no-default-table.snapshot.ts @@ -69,10 +69,10 @@ export interface IAllStringsResult { extractMonth1: Date; extractSecond1: Date; extractYear1: Date; - jsonArray1: any; + jsonArray1: unknown; jsonBuildObject1: { key: string }; jsonExtractPathText1: string; - jsonbArray1: any; + jsonbArray1: unknown; jsonbBuildObject1: { key: string }; jsonbExtractPathText1: string; left1: string; @@ -84,7 +84,7 @@ export interface IAllStringsResult { now1: string; octetLength1: string; position1: number; - random1: any; + random1: unknown; repeat1: string; replace1: string; reverse1: string; @@ -96,8 +96,8 @@ export interface IAllStringsResult { substring1: string; toChar1: string; toDate1: string; - toJson1: any; - toJsonb1: any; + toJson1: unknown; + toJsonb1: unknown; toTimestamp1: string; trim1: string; upper1: string; diff --git a/tests/demo/select/select.queries.ts b/tests/demo/select/select.queries.ts index 1f58479d..fd7e931b 100644 --- a/tests/demo/select/select.queries.ts +++ b/tests/demo/select/select.queries.ts @@ -118,7 +118,7 @@ export interface ISelectSql10Query { export type SelectSql11Params = [string, string]; export interface ISelectSql11Result { - hmm: any; + hmm: unknown; id: number; quantity: number | null; } diff --git a/tests/demo/select/select.snapshot.ts b/tests/demo/select/select.snapshot.ts index 37fb9cfa..abd24930 100644 --- a/tests/demo/select/select.snapshot.ts +++ b/tests/demo/select/select.snapshot.ts @@ -118,7 +118,7 @@ export interface ISelectSql10Query { export type SelectSql11Params = [string, string]; export interface ISelectSql11Result { - hmm: any; + hmm: unknown; id: number; quantity: number | null; } diff --git a/tests/demo/typescript/expression/as_const.ts b/tests/demo/typescript/expression/as_const.ts index 17c4525a..5ea422ee 100644 --- a/tests/demo/typescript/expression/as_const.ts +++ b/tests/demo/typescript/expression/as_const.ts @@ -20,4 +20,4 @@ const nestedAsConst = { // as const with type assertion const asConstWithTypeAssertion = { query: sql`SELECT id, name FROM items` -} as const satisfies Record +} as const satisfies Record diff --git a/tests/demo/typescript/expression/types.ts b/tests/demo/typescript/expression/types.ts index 6802a9ea..cc97c7d2 100644 --- a/tests/demo/typescript/expression/types.ts +++ b/tests/demo/typescript/expression/types.ts @@ -30,7 +30,7 @@ module TestModule { const moduleSql = sql`SELECT id FROM items` } -let name: any = 'test' -let companyName = name +let name: unknown = 'test' +let compunknownName = name let partnerName = name as string let someName = 'test' as const diff --git a/tests/demo_json/postgres/array_operations.queries.ts b/tests/demo_json/postgres/array_operations.queries.ts index eb315b93..4cdf1132 100644 --- a/tests/demo_json/postgres/array_operations.queries.ts +++ b/tests/demo_json/postgres/array_operations.queries.ts @@ -1,7 +1,7 @@ export type ArrayAggBasicParams = []; export interface IArrayAggBasicResult { - names: any; + names: unknown; rarity: string | null; } @@ -13,7 +13,7 @@ export interface IArrayAggBasicQuery { export type ArrayAggWithOrderByParams = []; export interface IArrayAggWithOrderByResult { - namesOrdered: any; + namesOrdered: unknown; rarity: string | null; } @@ -22,17 +22,17 @@ export interface IArrayAggWithOrderByQuery { result: IArrayAggWithOrderByResult; } -export type ArrayLiteralAnyParams = []; +export type ArrayLiteralUnknownParams = []; -export interface IArrayLiteralAnyResult { +export interface IArrayLiteralUnknownResult { id: number; name: string; rarity: string | null; } -export interface IArrayLiteralAnyQuery { - params: ArrayLiteralAnyParams; - result: IArrayLiteralAnyResult; +export interface IArrayLiteralUnknownQuery { + params: ArrayLiteralUnknownParams; + result: IArrayLiteralUnknownResult; } export type ArrayWithParamsParams = [Array]; diff --git a/tests/demo_json/postgres/array_operations.snapshot.ts b/tests/demo_json/postgres/array_operations.snapshot.ts index c9f2fa98..458b58b2 100644 --- a/tests/demo_json/postgres/array_operations.snapshot.ts +++ b/tests/demo_json/postgres/array_operations.snapshot.ts @@ -1,7 +1,7 @@ export type ArrayAggBasicParams = []; export interface IArrayAggBasicResult { - names: any; + names: unknown; rarity: string | null; } @@ -13,7 +13,7 @@ export interface IArrayAggBasicQuery { export type ArrayAggWithOrderByParams = []; export interface IArrayAggWithOrderByResult { - namesOrdered: any; + namesOrdered: unknown; rarity: string | null; } @@ -22,17 +22,17 @@ export interface IArrayAggWithOrderByQuery { result: IArrayAggWithOrderByResult; } -export type ArrayLiteralAnyParams = []; +export type ArrayLiteralUnknownParams = []; -export interface IArrayLiteralAnyResult { +export interface IArrayLiteralUnknownResult { id: number; name: string; rarity: string | null; } -export interface IArrayLiteralAnyQuery { - params: ArrayLiteralAnyParams; - result: IArrayLiteralAnyResult; +export interface IArrayLiteralUnknownQuery { + params: ArrayLiteralUnknownParams; + result: IArrayLiteralUnknownResult; } export type ArrayWithParamsParams = [Array]; diff --git a/tests/demo_json/postgres/array_operations.ts b/tests/demo_json/postgres/array_operations.ts index 0fae2d29..5d616cf0 100644 --- a/tests/demo_json/postgres/array_operations.ts +++ b/tests/demo_json/postgres/array_operations.ts @@ -20,9 +20,9 @@ FROM items GROUP BY rarity ` -// Array literal and ANY -const arrayLiteralAny = sql` --- @name: array literal any +// Array literal and unknown +const arrayLiteralunknown = sql` +-- @name: array literal unknown SELECT id, name, rarity FROM items WHERE rarity = ANY(ARRAY['common', 'rare']) From c1042453c5c696762a63d65e45513dc0ea2e76a9 Mon Sep 17 00:00:00 2001 From: Leo5878 Date: Mon, 9 Feb 2026 18:54:35 +0300 Subject: [PATCH 4/7] Running fmt --- .../sql_parser/expressions/translate_expr.rs | 20 ++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/src/ts_generator/sql_parser/expressions/translate_expr.rs b/src/ts_generator/sql_parser/expressions/translate_expr.rs index 411c189e..1ac06863 100644 --- a/src/ts_generator/sql_parser/expressions/translate_expr.rs +++ b/src/ts_generator/sql_parser/expressions/translate_expr.rs @@ -579,7 +579,9 @@ pub async fn translate_expr( Expr::Collate { expr: _, collation: _ } => { ts_query.insert_result(alias, &[TsFieldType::Unknown], is_selection, false, expr_for_logging) } - Expr::TypedString(_) => ts_query.insert_result(alias, &[TsFieldType::Unknown], is_selection, false, expr_for_logging), + Expr::TypedString(_) => { + ts_query.insert_result(alias, &[TsFieldType::Unknown], is_selection, false, expr_for_logging) + } Expr::Map(_) => ts_query.insert_result(alias, &[TsFieldType::Unknown], is_selection, false, expr_for_logging), // Note: AggregateExpressionWithFilter was removed in sqlparser 0.59.0 // Aggregate functions with filters are now part of the Function variant @@ -680,7 +682,13 @@ pub async fn translate_expr( FunctionArguments::List(arg_list) => &arg_list.args, _ => { // If no arguments or subquery, return Any - return ts_query.insert_result(Some(alias), &[TsFieldType::Unknown], is_selection, false, expr_for_logging); + return ts_query.insert_result( + Some(alias), + &[TsFieldType::Unknown], + is_selection, + false, + expr_for_logging, + ); } }; @@ -723,7 +731,13 @@ pub async fn translate_expr( expr_for_logging, )?; } else { - ts_query.insert_result(Some(alias), &[TsFieldType::Unknown], is_selection, false, expr_for_logging)?; + ts_query.insert_result( + Some(alias), + &[TsFieldType::Unknown], + is_selection, + false, + expr_for_logging, + )?; } Ok(()) From 5d999eaccbfc380b34f664ef365cc1dfed44ef9a Mon Sep 17 00:00:00 2001 From: JasonShin Date: Tue, 10 Mar 2026 22:37:58 +1100 Subject: [PATCH 5/7] fmt --- .../sql_parser/expressions/translate_expr.rs | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/ts_generator/sql_parser/expressions/translate_expr.rs b/src/ts_generator/sql_parser/expressions/translate_expr.rs index 1ac06863..d147a042 100644 --- a/src/ts_generator/sql_parser/expressions/translate_expr.rs +++ b/src/ts_generator/sql_parser/expressions/translate_expr.rs @@ -683,12 +683,12 @@ pub async fn translate_expr( _ => { // If no arguments or subquery, return Any return ts_query.insert_result( - Some(alias), - &[TsFieldType::Unknown], - is_selection, - false, - expr_for_logging, - ); + Some(alias), + &[TsFieldType::Unknown], + is_selection, + false, + expr_for_logging, + ); } }; From b6a5a39cc543e64038aeff65b6cfb38c54b2ba92 Mon Sep 17 00:00:00 2001 From: JasonShin Date: Wed, 25 Mar 2026 23:47:06 +1100 Subject: [PATCH 6/7] fix --- .../function_handlers/json_functions.rs | 2 +- .../sql_parser/expressions/translate_expr.rs | 2 +- .../mysql/json_access_operators.queries.ts | 16 +++---- .../mysql/json_access_operators.snapshot.ts | 17 +++---- .../mysql/json_array_functions.queries.ts | 46 +++++++++--------- .../mysql/json_array_functions.snapshot.ts | 47 +++++++++--------- .../mysql/json_comprehensive.queries.ts | 32 ++++++------- .../mysql/json_comprehensive.snapshot.ts | 32 ++++++------- .../mysql/json_object_functions.queries.ts | 48 +++++++++---------- .../mysql/json_object_functions.snapshot.ts | 48 +++++++++---------- .../mysql/json_operations.queries.ts | 2 +- .../mysql/json_operations.snapshot.ts | 3 +- .../postgres/json_array_functions.queries.ts | 4 +- .../postgres/json_array_functions.snapshot.ts | 4 +- .../postgres/json_comprehensive.queries.ts | 8 ++-- .../postgres/json_comprehensive.snapshot.ts | 8 ++-- .../postgres/json_object_functions.queries.ts | 26 +++++----- .../json_object_functions.snapshot.ts | 26 +++++----- 18 files changed, 187 insertions(+), 184 deletions(-) diff --git a/src/ts_generator/sql_parser/expressions/function_handlers/json_functions.rs b/src/ts_generator/sql_parser/expressions/function_handlers/json_functions.rs index 49ffb205..1fd0f3cf 100644 --- a/src/ts_generator/sql_parser/expressions/function_handlers/json_functions.rs +++ b/src/ts_generator/sql_parser/expressions/function_handlers/json_functions.rs @@ -149,7 +149,7 @@ pub async fn handle_json_build_function( // For other build functions or on failure, return Any ctx .ts_query - .insert_result(Some(ctx.alias), &[TsFieldType::Any], ctx.is_selection, false, expr_log) + .insert_result(Some(ctx.alias), &[TsFieldType::Unknown], ctx.is_selection, false, expr_log) } /// Handle JSON aggregation functions (jsonb_agg, json_agg, etc.) diff --git a/src/ts_generator/sql_parser/expressions/translate_expr.rs b/src/ts_generator/sql_parser/expressions/translate_expr.rs index d147a042..718bb070 100644 --- a/src/ts_generator/sql_parser/expressions/translate_expr.rs +++ b/src/ts_generator/sql_parser/expressions/translate_expr.rs @@ -657,7 +657,7 @@ pub async fn translate_expr( FunctionArguments::List(arg_list) => &arg_list.args, _ => { // If no arguments or subquery, return Any - return ts_query.insert_result(Some(alias), &[TsFieldType::Any], is_selection, false, expr_for_logging); + return ts_query.insert_result(Some(alias), &[TsFieldType::Unknown], is_selection, false, expr_for_logging); } }; diff --git a/tests/demo_json/mysql/json_access_operators.queries.ts b/tests/demo_json/mysql/json_access_operators.queries.ts index 0577bd18..21171a7a 100644 --- a/tests/demo_json/mysql/json_access_operators.queries.ts +++ b/tests/demo_json/mysql/json_access_operators.queries.ts @@ -63,8 +63,8 @@ export type JsonPathAccessParams = []; export interface IJsonPathAccessResult { firstItemJson: string; - firstItemName: any; - firstItemRarity: any; + firstItemName: unknown; + firstItemRarity: unknown; id: number; level: number; levelJson: string; @@ -80,7 +80,7 @@ export type JsonDeepPathAccessParams = []; export interface IJsonDeepPathAccessResult { darkMode: number; - dbHost: any; + dbHost: unknown; dbHostJson: string; dbPort: number; emailNotifications: number; @@ -110,12 +110,12 @@ export interface IJsonFilterByFieldQuery { export type JsonNullHandlingParams = []; export interface IJsonNullHandlingResult { - firstComment: any; - firstReviewer: any; + firstComment: unknown; + firstReviewer: unknown; id: number; - secondComment: any; - thirdComment: any; - thirdReviewer: any; + secondComment: unknown; + thirdComment: unknown; + thirdReviewer: unknown; } export interface IJsonNullHandlingQuery { diff --git a/tests/demo_json/mysql/json_access_operators.snapshot.ts b/tests/demo_json/mysql/json_access_operators.snapshot.ts index 0577bd18..7b9a26ae 100644 --- a/tests/demo_json/mysql/json_access_operators.snapshot.ts +++ b/tests/demo_json/mysql/json_access_operators.snapshot.ts @@ -63,8 +63,8 @@ export type JsonPathAccessParams = []; export interface IJsonPathAccessResult { firstItemJson: string; - firstItemName: any; - firstItemRarity: any; + firstItemName: unknown; + firstItemRarity: unknown; id: number; level: number; levelJson: string; @@ -80,7 +80,7 @@ export type JsonDeepPathAccessParams = []; export interface IJsonDeepPathAccessResult { darkMode: number; - dbHost: any; + dbHost: unknown; dbHostJson: string; dbPort: number; emailNotifications: number; @@ -110,15 +110,16 @@ export interface IJsonFilterByFieldQuery { export type JsonNullHandlingParams = []; export interface IJsonNullHandlingResult { - firstComment: any; - firstReviewer: any; + firstComment: unknown; + firstReviewer: unknown; id: number; - secondComment: any; - thirdComment: any; - thirdReviewer: any; + secondComment: unknown; + thirdComment: unknown; + thirdReviewer: unknown; } export interface IJsonNullHandlingQuery { params: JsonNullHandlingParams; result: IJsonNullHandlingResult; } + diff --git a/tests/demo_json/mysql/json_array_functions.queries.ts b/tests/demo_json/mysql/json_array_functions.queries.ts index 6b057d4f..66da8e70 100644 --- a/tests/demo_json/mysql/json_array_functions.queries.ts +++ b/tests/demo_json/mysql/json_array_functions.queries.ts @@ -2,9 +2,9 @@ export type JsonArrayLengthParams = []; export interface IJsonArrayLengthResult { id: number; - itemsCount: any; + itemsCount: unknown; name: string; - tagsCount: any; + tagsCount: unknown; } export interface IJsonArrayLengthQuery { @@ -15,11 +15,11 @@ export interface IJsonArrayLengthQuery { export type JsonArrayExtractParams = []; export interface IJsonArrayExtractResult { - firstTag: any; + firstTag: unknown; id: number; name: string; - secondTag: any; - thirdTag: any; + secondTag: unknown; + thirdTag: unknown; } export interface IJsonArrayExtractQuery { @@ -30,11 +30,11 @@ export interface IJsonArrayExtractQuery { export type JsonArrayContainsParams = []; export interface IJsonArrayContainsResult { - hasDatabase: any; - hasMysql: any; + hasDatabase: unknown; + hasMysql: unknown; id: number; name: string; - tags: any; + tags: unknown; } export interface IJsonArrayContainsQuery { @@ -45,8 +45,8 @@ export interface IJsonArrayContainsQuery { export type JsonArrayMembershipParams = []; export interface IJsonArrayMembershipResult { - hasMysqlTag: any; - hasTutorialTag: any; + hasMysqlTag: unknown; + hasTutorialTag: unknown; id: number; name: string; } @@ -59,12 +59,12 @@ export interface IJsonArrayMembershipQuery { export type JsonNestedArrayAccessParams = []; export interface IJsonNestedArrayAccessResult { - firstItemName: any; - firstItemPrice: any; + firstItemName: unknown; + firstItemPrice: unknown; id: number; name: string; - secondItemName: any; - secondItemQuantity: any; + secondItemName: unknown; + secondItemQuantity: unknown; } export interface IJsonNestedArrayAccessQuery { @@ -75,12 +75,12 @@ export interface IJsonNestedArrayAccessQuery { export type JsonDeepNestedArrayParams = []; export interface IJsonDeepNestedArrayResult { - firstAchievement: any; - firstInventoryItem: any; - firstItemRarity: any; + firstAchievement: unknown; + firstInventoryItem: unknown; + firstItemRarity: unknown; id: number; name: string; - secondInventoryItem: any; + secondInventoryItem: unknown; } export interface IJsonDeepNestedArrayQuery { @@ -91,7 +91,7 @@ export interface IJsonDeepNestedArrayQuery { export type JsonArrayBuildParams = []; export interface IJsonArrayBuildResult { - firstTwoTags: any; + firstTwoTags: unknown; id: number; name: string; } @@ -106,8 +106,8 @@ export type JsonArrayAppendParams = []; export interface IJsonArrayAppendResult { id: number; name: string; - originalTags: any; - tagsWithNew: any; + originalTags: unknown; + tagsWithNew: unknown; } export interface IJsonArrayAppendQuery { @@ -120,8 +120,8 @@ export type JsonArrayInsertParams = []; export interface IJsonArrayInsertResult { id: number; name: string; - originalTags: any; - tagsWithInsert: any; + originalTags: unknown; + tagsWithInsert: unknown; } export interface IJsonArrayInsertQuery { diff --git a/tests/demo_json/mysql/json_array_functions.snapshot.ts b/tests/demo_json/mysql/json_array_functions.snapshot.ts index 6b057d4f..6399ae19 100644 --- a/tests/demo_json/mysql/json_array_functions.snapshot.ts +++ b/tests/demo_json/mysql/json_array_functions.snapshot.ts @@ -2,9 +2,9 @@ export type JsonArrayLengthParams = []; export interface IJsonArrayLengthResult { id: number; - itemsCount: any; + itemsCount: unknown; name: string; - tagsCount: any; + tagsCount: unknown; } export interface IJsonArrayLengthQuery { @@ -15,11 +15,11 @@ export interface IJsonArrayLengthQuery { export type JsonArrayExtractParams = []; export interface IJsonArrayExtractResult { - firstTag: any; + firstTag: unknown; id: number; name: string; - secondTag: any; - thirdTag: any; + secondTag: unknown; + thirdTag: unknown; } export interface IJsonArrayExtractQuery { @@ -30,11 +30,11 @@ export interface IJsonArrayExtractQuery { export type JsonArrayContainsParams = []; export interface IJsonArrayContainsResult { - hasDatabase: any; - hasMysql: any; + hasDatabase: unknown; + hasMysql: unknown; id: number; name: string; - tags: any; + tags: unknown; } export interface IJsonArrayContainsQuery { @@ -45,8 +45,8 @@ export interface IJsonArrayContainsQuery { export type JsonArrayMembershipParams = []; export interface IJsonArrayMembershipResult { - hasMysqlTag: any; - hasTutorialTag: any; + hasMysqlTag: unknown; + hasTutorialTag: unknown; id: number; name: string; } @@ -59,12 +59,12 @@ export interface IJsonArrayMembershipQuery { export type JsonNestedArrayAccessParams = []; export interface IJsonNestedArrayAccessResult { - firstItemName: any; - firstItemPrice: any; + firstItemName: unknown; + firstItemPrice: unknown; id: number; name: string; - secondItemName: any; - secondItemQuantity: any; + secondItemName: unknown; + secondItemQuantity: unknown; } export interface IJsonNestedArrayAccessQuery { @@ -75,12 +75,12 @@ export interface IJsonNestedArrayAccessQuery { export type JsonDeepNestedArrayParams = []; export interface IJsonDeepNestedArrayResult { - firstAchievement: any; - firstInventoryItem: any; - firstItemRarity: any; + firstAchievement: unknown; + firstInventoryItem: unknown; + firstItemRarity: unknown; id: number; name: string; - secondInventoryItem: any; + secondInventoryItem: unknown; } export interface IJsonDeepNestedArrayQuery { @@ -91,7 +91,7 @@ export interface IJsonDeepNestedArrayQuery { export type JsonArrayBuildParams = []; export interface IJsonArrayBuildResult { - firstTwoTags: any; + firstTwoTags: unknown; id: number; name: string; } @@ -106,8 +106,8 @@ export type JsonArrayAppendParams = []; export interface IJsonArrayAppendResult { id: number; name: string; - originalTags: any; - tagsWithNew: any; + originalTags: unknown; + tagsWithNew: unknown; } export interface IJsonArrayAppendQuery { @@ -120,11 +120,12 @@ export type JsonArrayInsertParams = []; export interface IJsonArrayInsertResult { id: number; name: string; - originalTags: any; - tagsWithInsert: any; + originalTags: unknown; + tagsWithInsert: unknown; } export interface IJsonArrayInsertQuery { params: JsonArrayInsertParams; result: IJsonArrayInsertResult; } + diff --git a/tests/demo_json/mysql/json_comprehensive.queries.ts b/tests/demo_json/mysql/json_comprehensive.queries.ts index 870eb844..1f3fc00e 100644 --- a/tests/demo_json/mysql/json_comprehensive.queries.ts +++ b/tests/demo_json/mysql/json_comprehensive.queries.ts @@ -2,10 +2,10 @@ export type JsonExtractParams = []; export interface IJsonExtractResult { age: number; - email: any; + email: unknown; id: number; name: string; - username: any; + username: unknown; } export interface IJsonExtractQuery { @@ -30,10 +30,10 @@ export interface IJsonExtractShorthandQuery { export type JsonNestedPathParams = []; export interface IJsonNestedPathResult { - city: any; + city: unknown; id: number; name: string; - zipCode: any; + zipCode: unknown; } export interface IJsonNestedPathQuery { @@ -44,7 +44,7 @@ export interface IJsonNestedPathQuery { export type JsonArrayIndexParams = []; export interface IJsonArrayIndexResult { - firstItemName: any; + firstItemName: unknown; firstItemPrice: number; id: number; name: string; @@ -60,7 +60,7 @@ export type JsonArrayLengthParams = []; export interface IJsonArrayLengthResult { id: number; name: string; - tagsCount: any; + tagsCount: unknown; } export interface IJsonArrayLengthQuery { @@ -71,10 +71,10 @@ export interface IJsonArrayLengthQuery { export type JsonTypeParams = []; export interface IJsonTypeResult { - ageType: any; + ageType: unknown; id: number; - tagsType: any; - usernameType: any; + tagsType: unknown; + usernameType: unknown; } export interface IJsonTypeQuery { @@ -86,7 +86,7 @@ export type JsonContainsParams = []; export interface IJsonContainsResult { id: number; - isActive: any; + isActive: unknown; name: string; } @@ -98,7 +98,7 @@ export interface IJsonContainsQuery { export type JsonKeysParams = []; export interface IJsonKeysResult { - allKeys: any; + allKeys: unknown; id: number; name: string; } @@ -126,7 +126,7 @@ export type JsonFilterParams = []; export interface IJsonFilterResult { id: number; name: string; - username: any; + username: unknown; } export interface IJsonFilterQuery { @@ -137,8 +137,8 @@ export interface IJsonFilterQuery { export type JsonDeepPathParams = []; export interface IJsonDeepPathResult { - appName: any; - dbHost: any; + appName: unknown; + dbHost: unknown; dbPort: number; id: number; } @@ -152,7 +152,7 @@ export type JsonValidParams = []; export interface IJsonValidResult { id: number; - isValidJson: any; + isValidJson: unknown; name: string; } @@ -166,7 +166,7 @@ export type JsonSearchParams = []; export interface IJsonSearchResult { id: number; name: string; - usernamePath: any; + usernamePath: unknown; } export interface IJsonSearchQuery { diff --git a/tests/demo_json/mysql/json_comprehensive.snapshot.ts b/tests/demo_json/mysql/json_comprehensive.snapshot.ts index f3e50ea0..73541fe4 100644 --- a/tests/demo_json/mysql/json_comprehensive.snapshot.ts +++ b/tests/demo_json/mysql/json_comprehensive.snapshot.ts @@ -2,10 +2,10 @@ export type JsonExtractParams = []; export interface IJsonExtractResult { age: number; - email: any; + email: unknown; id: number; name: string; - username: any; + username: unknown; } export interface IJsonExtractQuery { @@ -30,10 +30,10 @@ export interface IJsonExtractShorthandQuery { export type JsonNestedPathParams = []; export interface IJsonNestedPathResult { - city: any; + city: unknown; id: number; name: string; - zipCode: any; + zipCode: unknown; } export interface IJsonNestedPathQuery { @@ -44,7 +44,7 @@ export interface IJsonNestedPathQuery { export type JsonArrayIndexParams = []; export interface IJsonArrayIndexResult { - firstItemName: any; + firstItemName: unknown; firstItemPrice: number; id: number; name: string; @@ -60,7 +60,7 @@ export type JsonArrayLengthParams = []; export interface IJsonArrayLengthResult { id: number; name: string; - tagsCount: any; + tagsCount: unknown; } export interface IJsonArrayLengthQuery { @@ -71,10 +71,10 @@ export interface IJsonArrayLengthQuery { export type JsonTypeParams = []; export interface IJsonTypeResult { - ageType: any; + ageType: unknown; id: number; - tagsType: any; - usernameType: any; + tagsType: unknown; + usernameType: unknown; } export interface IJsonTypeQuery { @@ -86,7 +86,7 @@ export type JsonContainsParams = []; export interface IJsonContainsResult { id: number; - isActive: any; + isActive: unknown; name: string; } @@ -98,7 +98,7 @@ export interface IJsonContainsQuery { export type JsonKeysParams = []; export interface IJsonKeysResult { - allKeys: any; + allKeys: unknown; id: number; name: string; } @@ -126,7 +126,7 @@ export type JsonFilterParams = []; export interface IJsonFilterResult { id: number; name: string; - username: any; + username: unknown; } export interface IJsonFilterQuery { @@ -137,8 +137,8 @@ export interface IJsonFilterQuery { export type JsonDeepPathParams = []; export interface IJsonDeepPathResult { - appName: any; - dbHost: any; + appName: unknown; + dbHost: unknown; dbPort: number; id: number; } @@ -152,7 +152,7 @@ export type JsonValidParams = []; export interface IJsonValidResult { id: number; - isValidJson: any; + isValidJson: unknown; name: string; } @@ -166,7 +166,7 @@ export type JsonSearchParams = []; export interface IJsonSearchResult { id: number; name: string; - usernamePath: any; + usernamePath: unknown; } export interface IJsonSearchQuery { diff --git a/tests/demo_json/mysql/json_object_functions.queries.ts b/tests/demo_json/mysql/json_object_functions.queries.ts index 8d6588e4..fba5ce71 100644 --- a/tests/demo_json/mysql/json_object_functions.queries.ts +++ b/tests/demo_json/mysql/json_object_functions.queries.ts @@ -3,7 +3,7 @@ export type JsonObjectKeysParams = []; export interface IJsonObjectKeysResult { id: number; name: string; - objectKeys: any; + objectKeys: unknown; } export interface IJsonObjectKeysQuery { @@ -14,7 +14,7 @@ export interface IJsonObjectKeysQuery { export type JsonObjectKeysPathParams = []; export interface IJsonObjectKeysPathResult { - addressKeys: any; + addressKeys: unknown; id: number; name: string; } @@ -27,13 +27,13 @@ export interface IJsonObjectKeysPathQuery { export type JsonTypeofParams = []; export interface IJsonTypeofResult { - activeType: any; - ageType: any; + activeType: unknown; + ageType: unknown; id: number; - itemsType: any; + itemsType: unknown; name: string; - tagsType: any; - usernameType: any; + tagsType: unknown; + usernameType: unknown; } export interface IJsonTypeofQuery { @@ -44,9 +44,9 @@ export interface IJsonTypeofQuery { export type JsonContainsParams = []; export interface IJsonContainsResult { - hasSpecificUsername: any; + hasSpecificUsername: unknown; id: number; - isActive: any; + isActive: unknown; name: string; } @@ -58,10 +58,10 @@ export interface IJsonContainsQuery { export type JsonContainsPathParams = []; export interface IJsonContainsPathResult { - hasAddress: any; - hasBoth: any; - hasNonexistent: any; - hasUsername: any; + hasAddress: unknown; + hasBoth: unknown; + hasNonexistent: unknown; + hasUsername: unknown; id: number; name: string; } @@ -90,8 +90,8 @@ export interface IJsonSetResult { id: number; name: string; originalData: object; - updatedAge: any; - updatedCity: any; + updatedAge: unknown; + updatedCity: unknown; } export interface IJsonSetQuery { @@ -105,7 +105,7 @@ export interface IJsonInsertResult { id: number; name: string; originalData: object; - withPhone: any; + withPhone: unknown; } export interface IJsonInsertQuery { @@ -119,7 +119,7 @@ export interface IJsonReplaceResult { id: number; name: string; originalData: object; - withNewUsername: any; + withNewUsername: unknown; } export interface IJsonReplaceQuery { @@ -133,7 +133,7 @@ export interface IJsonRemoveResult { id: number; name: string; originalData: object; - withoutAge: any; + withoutAge: unknown; } export interface IJsonRemoveQuery { @@ -145,7 +145,7 @@ export type JsonMergePatchParams = []; export interface IJsonMergePatchResult { id: number; - mergedData: any; + mergedData: unknown; name: string; originalData: object; } @@ -159,7 +159,7 @@ export type JsonMergePreserveParams = []; export interface IJsonMergePreserveResult { id: number; - mergedData: any; + mergedData: unknown; name: string; originalData: object; } @@ -172,10 +172,10 @@ export interface IJsonMergePreserveQuery { export type JsonSearchParams = []; export interface IJsonSearchResult { - emailPath: any; + emailPath: unknown; id: number; name: string; - usernamePath: any; + usernamePath: unknown; } export interface IJsonSearchQuery { @@ -186,7 +186,7 @@ export interface IJsonSearchQuery { export type JsonDepthParams = []; export interface IJsonDepthResult { - dataDepth: any; + dataDepth: unknown; id: number; name: string; } @@ -200,7 +200,7 @@ export type JsonValidParams = []; export interface IJsonValidResult { id: number; - isValidJson: any; + isValidJson: unknown; name: string; } diff --git a/tests/demo_json/mysql/json_object_functions.snapshot.ts b/tests/demo_json/mysql/json_object_functions.snapshot.ts index 9537f5bb..b2cafef5 100644 --- a/tests/demo_json/mysql/json_object_functions.snapshot.ts +++ b/tests/demo_json/mysql/json_object_functions.snapshot.ts @@ -3,7 +3,7 @@ export type JsonObjectKeysParams = []; export interface IJsonObjectKeysResult { id: number; name: string; - objectKeys: any; + objectKeys: unknown; } export interface IJsonObjectKeysQuery { @@ -14,7 +14,7 @@ export interface IJsonObjectKeysQuery { export type JsonObjectKeysPathParams = []; export interface IJsonObjectKeysPathResult { - addressKeys: any; + addressKeys: unknown; id: number; name: string; } @@ -27,13 +27,13 @@ export interface IJsonObjectKeysPathQuery { export type JsonTypeofParams = []; export interface IJsonTypeofResult { - activeType: any; - ageType: any; + activeType: unknown; + ageType: unknown; id: number; - itemsType: any; + itemsType: unknown; name: string; - tagsType: any; - usernameType: any; + tagsType: unknown; + usernameType: unknown; } export interface IJsonTypeofQuery { @@ -44,9 +44,9 @@ export interface IJsonTypeofQuery { export type JsonContainsParams = []; export interface IJsonContainsResult { - hasSpecificUsername: any; + hasSpecificUsername: unknown; id: number; - isActive: any; + isActive: unknown; name: string; } @@ -58,10 +58,10 @@ export interface IJsonContainsQuery { export type JsonContainsPathParams = []; export interface IJsonContainsPathResult { - hasAddress: any; - hasBoth: any; - hasNonexistent: any; - hasUsername: any; + hasAddress: unknown; + hasBoth: unknown; + hasNonexistent: unknown; + hasUsername: unknown; id: number; name: string; } @@ -90,8 +90,8 @@ export interface IJsonSetResult { id: number; name: string; originalData: object; - updatedAge: any; - updatedCity: any; + updatedAge: unknown; + updatedCity: unknown; } export interface IJsonSetQuery { @@ -105,7 +105,7 @@ export interface IJsonInsertResult { id: number; name: string; originalData: object; - withPhone: any; + withPhone: unknown; } export interface IJsonInsertQuery { @@ -119,7 +119,7 @@ export interface IJsonReplaceResult { id: number; name: string; originalData: object; - withNewUsername: any; + withNewUsername: unknown; } export interface IJsonReplaceQuery { @@ -133,7 +133,7 @@ export interface IJsonRemoveResult { id: number; name: string; originalData: object; - withoutAge: any; + withoutAge: unknown; } export interface IJsonRemoveQuery { @@ -145,7 +145,7 @@ export type JsonMergePatchParams = []; export interface IJsonMergePatchResult { id: number; - mergedData: any; + mergedData: unknown; name: string; originalData: object; } @@ -159,7 +159,7 @@ export type JsonMergePreserveParams = []; export interface IJsonMergePreserveResult { id: number; - mergedData: any; + mergedData: unknown; name: string; originalData: object; } @@ -172,10 +172,10 @@ export interface IJsonMergePreserveQuery { export type JsonSearchParams = []; export interface IJsonSearchResult { - emailPath: any; + emailPath: unknown; id: number; name: string; - usernamePath: any; + usernamePath: unknown; } export interface IJsonSearchQuery { @@ -186,7 +186,7 @@ export interface IJsonSearchQuery { export type JsonDepthParams = []; export interface IJsonDepthResult { - dataDepth: any; + dataDepth: unknown; id: number; name: string; } @@ -200,7 +200,7 @@ export type JsonValidParams = []; export interface IJsonValidResult { id: number; - isValidJson: any; + isValidJson: unknown; name: string; } diff --git a/tests/demo_json/mysql/json_operations.queries.ts b/tests/demo_json/mysql/json_operations.queries.ts index 2392c7e4..033e7105 100644 --- a/tests/demo_json/mysql/json_operations.queries.ts +++ b/tests/demo_json/mysql/json_operations.queries.ts @@ -1,7 +1,7 @@ export type JsonOperatorsSelectParams = []; export interface IJsonOperatorsSelectResult { - extractedName: any; + extractedName: unknown; id: number; name: string; } diff --git a/tests/demo_json/mysql/json_operations.snapshot.ts b/tests/demo_json/mysql/json_operations.snapshot.ts index 2392c7e4..0336db9c 100644 --- a/tests/demo_json/mysql/json_operations.snapshot.ts +++ b/tests/demo_json/mysql/json_operations.snapshot.ts @@ -1,7 +1,7 @@ export type JsonOperatorsSelectParams = []; export interface IJsonOperatorsSelectResult { - extractedName: any; + extractedName: unknown; id: number; name: string; } @@ -10,3 +10,4 @@ export interface IJsonOperatorsSelectQuery { params: JsonOperatorsSelectParams; result: IJsonOperatorsSelectResult; } + diff --git a/tests/demo_json/postgres/json_array_functions.queries.ts b/tests/demo_json/postgres/json_array_functions.queries.ts index cd1e5fed..4a6f2b9b 100644 --- a/tests/demo_json/postgres/json_array_functions.queries.ts +++ b/tests/demo_json/postgres/json_array_functions.queries.ts @@ -1,10 +1,10 @@ export type JsonbArrayLengthParams = []; export interface IJsonbArrayLengthResult { - itemsCount: any; + itemsCount: unknown; jsonTestDataId: number; jsonTestDataName: string; - tagsCount: any; + tagsCount: unknown; } export interface IJsonbArrayLengthQuery { diff --git a/tests/demo_json/postgres/json_array_functions.snapshot.ts b/tests/demo_json/postgres/json_array_functions.snapshot.ts index 52fb189e..506cfe0b 100644 --- a/tests/demo_json/postgres/json_array_functions.snapshot.ts +++ b/tests/demo_json/postgres/json_array_functions.snapshot.ts @@ -1,10 +1,10 @@ export type JsonbArrayLengthParams = []; export interface IJsonbArrayLengthResult { - itemsCount: any; + itemsCount: unknown; jsonTestDataId: number; jsonTestDataName: string; - tagsCount: any; + tagsCount: unknown; } export interface IJsonbArrayLengthQuery { diff --git a/tests/demo_json/postgres/json_comprehensive.queries.ts b/tests/demo_json/postgres/json_comprehensive.queries.ts index 8c2e6431..52e47f78 100644 --- a/tests/demo_json/postgres/json_comprehensive.queries.ts +++ b/tests/demo_json/postgres/json_comprehensive.queries.ts @@ -46,7 +46,7 @@ export type JsonArrayLengthParams = []; export interface IJsonArrayLengthResult { id: number; name: string; - tagsCount: any; + tagsCount: unknown; } export interface IJsonArrayLengthQuery { @@ -57,10 +57,10 @@ export interface IJsonArrayLengthQuery { export type JsonTypeofParams = []; export interface IJsonTypeofResult { - ageType: any; + ageType: unknown; id: number; - tagsType: any; - usernameType: any; + tagsType: unknown; + usernameType: unknown; } export interface IJsonTypeofQuery { diff --git a/tests/demo_json/postgres/json_comprehensive.snapshot.ts b/tests/demo_json/postgres/json_comprehensive.snapshot.ts index 1945a372..58335b84 100644 --- a/tests/demo_json/postgres/json_comprehensive.snapshot.ts +++ b/tests/demo_json/postgres/json_comprehensive.snapshot.ts @@ -46,7 +46,7 @@ export type JsonArrayLengthParams = []; export interface IJsonArrayLengthResult { id: number; name: string; - tagsCount: any; + tagsCount: unknown; } export interface IJsonArrayLengthQuery { @@ -57,10 +57,10 @@ export interface IJsonArrayLengthQuery { export type JsonTypeofParams = []; export interface IJsonTypeofResult { - ageType: any; + ageType: unknown; id: number; - tagsType: any; - usernameType: any; + tagsType: unknown; + usernameType: unknown; } export interface IJsonTypeofQuery { diff --git a/tests/demo_json/postgres/json_object_functions.queries.ts b/tests/demo_json/postgres/json_object_functions.queries.ts index fb2fc6d6..2f3856bd 100644 --- a/tests/demo_json/postgres/json_object_functions.queries.ts +++ b/tests/demo_json/postgres/json_object_functions.queries.ts @@ -3,7 +3,7 @@ export type JsonbObjectKeysParams = []; export interface IJsonbObjectKeysResult { jsonTestDataId: number; jsonTestDataName: string; - objectKey: any; + objectKey: unknown; } export interface IJsonbObjectKeysQuery { @@ -14,13 +14,13 @@ export interface IJsonbObjectKeysQuery { export type JsonbTypeofParams = []; export interface IJsonbTypeofResult { - activeType: any; - ageType: any; - itemsType: any; + activeType: unknown; + ageType: unknown; + itemsType: unknown; jsonTestDataId: number; jsonTestDataName: string; - tagsType: any; - usernameType: any; + tagsType: unknown; + usernameType: unknown; } export interface IJsonbTypeofQuery { @@ -34,7 +34,7 @@ export interface IJsonbStripNullsResult { jsonTestDataId: number; jsonTestDataName: string; reviewWithNulls: number; - reviewWithoutNulls: any; + reviewWithoutNulls: unknown; } export interface IJsonbStripNullsQuery { @@ -60,7 +60,7 @@ export interface IJsonbKeyExistsQuery { export type JsonbAnyKeyExistsParams = []; export interface IJsonbAnyKeyExistsResult { - hasAnyContact: any; + hasAnyContact: unknown; jsonTestDataId: number; jsonTestDataName: string; } @@ -73,8 +73,8 @@ export interface IJsonbAnyKeyExistsQuery { export type JsonbAllKeysExistParams = []; export interface IJsonbAllKeysExistResult { - hasAllRequired: any; - hasAllWithPhone: any; + hasAllRequired: unknown; + hasAllWithPhone: unknown; jsonTestDataId: number; jsonTestDataName: string; } @@ -118,8 +118,8 @@ export interface IJsonbSetResult { jsonTestDataId: number; jsonTestDataName: string; originalData: object; - updatedAge: any; - updatedCity: any; + updatedAge: unknown; + updatedCity: unknown; } export interface IJsonbSetQuery { @@ -133,7 +133,7 @@ export interface IJsonbInsertResult { jsonTestDataId: number; jsonTestDataName: string; originalData: object; - withPhone: any; + withPhone: unknown; } export interface IJsonbInsertQuery { diff --git a/tests/demo_json/postgres/json_object_functions.snapshot.ts b/tests/demo_json/postgres/json_object_functions.snapshot.ts index 5679e9f9..95f0399c 100644 --- a/tests/demo_json/postgres/json_object_functions.snapshot.ts +++ b/tests/demo_json/postgres/json_object_functions.snapshot.ts @@ -3,7 +3,7 @@ export type JsonbObjectKeysParams = []; export interface IJsonbObjectKeysResult { jsonTestDataId: number; jsonTestDataName: string; - objectKey: any; + objectKey: unknown; } export interface IJsonbObjectKeysQuery { @@ -14,13 +14,13 @@ export interface IJsonbObjectKeysQuery { export type JsonbTypeofParams = []; export interface IJsonbTypeofResult { - activeType: any; - ageType: any; - itemsType: any; + activeType: unknown; + ageType: unknown; + itemsType: unknown; jsonTestDataId: number; jsonTestDataName: string; - tagsType: any; - usernameType: any; + tagsType: unknown; + usernameType: unknown; } export interface IJsonbTypeofQuery { @@ -34,7 +34,7 @@ export interface IJsonbStripNullsResult { jsonTestDataId: number; jsonTestDataName: string; reviewWithNulls: number; - reviewWithoutNulls: any; + reviewWithoutNulls: unknown; } export interface IJsonbStripNullsQuery { @@ -60,7 +60,7 @@ export interface IJsonbKeyExistsQuery { export type JsonbAnyKeyExistsParams = []; export interface IJsonbAnyKeyExistsResult { - hasAnyContact: any; + hasAnyContact: unknown; jsonTestDataId: number; jsonTestDataName: string; } @@ -73,8 +73,8 @@ export interface IJsonbAnyKeyExistsQuery { export type JsonbAllKeysExistParams = []; export interface IJsonbAllKeysExistResult { - hasAllRequired: any; - hasAllWithPhone: any; + hasAllRequired: unknown; + hasAllWithPhone: unknown; jsonTestDataId: number; jsonTestDataName: string; } @@ -118,8 +118,8 @@ export interface IJsonbSetResult { jsonTestDataId: number; jsonTestDataName: string; originalData: object; - updatedAge: any; - updatedCity: any; + updatedAge: unknown; + updatedCity: unknown; } export interface IJsonbSetQuery { @@ -133,7 +133,7 @@ export interface IJsonbInsertResult { jsonTestDataId: number; jsonTestDataName: string; originalData: object; - withPhone: any; + withPhone: unknown; } export interface IJsonbInsertQuery { From 24ba2e7a0caa49d33e23eb28135870965d302cd5 Mon Sep 17 00:00:00 2001 From: JasonShin Date: Wed, 25 Mar 2026 23:55:07 +1100 Subject: [PATCH 7/7] fmt --- .../expressions/function_handlers/json_functions.rs | 10 +++++++--- .../sql_parser/expressions/translate_expr.rs | 8 +++++++- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/src/ts_generator/sql_parser/expressions/function_handlers/json_functions.rs b/src/ts_generator/sql_parser/expressions/function_handlers/json_functions.rs index 1fd0f3cf..b831f9dd 100644 --- a/src/ts_generator/sql_parser/expressions/function_handlers/json_functions.rs +++ b/src/ts_generator/sql_parser/expressions/function_handlers/json_functions.rs @@ -147,9 +147,13 @@ pub async fn handle_json_build_function( } // For other build functions or on failure, return Any - ctx - .ts_query - .insert_result(Some(ctx.alias), &[TsFieldType::Unknown], ctx.is_selection, false, expr_log) + ctx.ts_query.insert_result( + Some(ctx.alias), + &[TsFieldType::Unknown], + ctx.is_selection, + false, + expr_log, + ) } /// Handle JSON aggregation functions (jsonb_agg, json_agg, etc.) diff --git a/src/ts_generator/sql_parser/expressions/translate_expr.rs b/src/ts_generator/sql_parser/expressions/translate_expr.rs index 718bb070..738d7ce4 100644 --- a/src/ts_generator/sql_parser/expressions/translate_expr.rs +++ b/src/ts_generator/sql_parser/expressions/translate_expr.rs @@ -657,7 +657,13 @@ pub async fn translate_expr( FunctionArguments::List(arg_list) => &arg_list.args, _ => { // If no arguments or subquery, return Any - return ts_query.insert_result(Some(alias), &[TsFieldType::Unknown], is_selection, false, expr_for_logging); + return ts_query.insert_result( + Some(alias), + &[TsFieldType::Unknown], + is_selection, + false, + expr_for_logging, + ); } };