from pydantic.dataclasses import dataclass
from pydantic.fields import Optional, Dict, List, Field
[docs]@dataclass
class SchemaRequest:
type: str = None
avro: str = None
mapping: Optional[str] = None
[docs]@dataclass
class IcebergPartitionSpecRequest:
index: int = None
type: str = None
column: str = None
name: str = None
[docs]@dataclass
class IcebergRequest:
specs: Optional[List[IcebergPartitionSpecRequest]] = None
properties: Optional[Dict[str, str]] = None
[docs]@dataclass
class PulsarRequest:
partitions: int = None
type: str = None
[docs]@dataclass
class DatasetRequest:
schema_: Optional[SchemaRequest] = Field(alias="schema")
iceberg: Optional[IcebergRequest] = None
pulsar: Optional[PulsarRequest] = None