[backend]
name = "python-snowflake"
language = "python"
file_extension = "py"
engine = "snowflake"
description = "Python code generation targeting snowflake-connector-python"

[types.scalars]
bool = "bool"
int16 = "int"
int32 = "int"
int64 = "int"
float32 = "float"
float64 = "float"
string = "str"
bytes = "bytes"
uuid = "str"
decimal = "decimal.Decimal"
date = "datetime.date"
time = "datetime.time"
time_tz = "datetime.time"
datetime = "datetime.datetime"
datetime_tz = "datetime.datetime"
interval = "str"
json = "dict[str, object]"
inet = "str"

[types.containers]
array = "list[{T}]"
nullable = "{T} | None"
json_typed = "{T}"

[naming]
struct_case = "PascalCase"
field_case = "snake_case"
fn_case = "snake_case"
enum_variant_case = "SCREAMING_SNAKE_CASE"
row_suffix = "Row"

[imports.rules]
"datetime." = "import datetime"
"decimal." = "import decimal"
