#!/usr/bin/env python3
# @generated AUTOGENERATED file. Do not Change!

from dataclasses import dataclass, field as _field
from functools import partial
from ...config import custom_scalars, datetime
from numbers import Number
from typing import Any, AsyncGenerator, Dict, List, Generator, Optional

from dataclasses_json import DataClassJsonMixin, config

from gql_client.runtime.enum_utils import enum_field_metadata
from ..enum.variable_expression_type import VariableExpressionType

from ..input.block_variable_input import BlockVariableInput


@dataclass(frozen=True)
class VariableExpressionInput(DataClassJsonMixin):
    type: VariableExpressionType = _field(metadata=enum_field_metadata(VariableExpressionType))
    expression: str
    blockVariables: List[BlockVariableInput]
    variableDefinitionKey: Optional[str] = None
    propertyTypeId: Optional[int] = None
