""" This module contains custom type definitions and aliases. """ from datetime import date, datetime from typing import Any, NewType OptionalStrDict = dict[str, Any] | None Dataclass = object DateType = date | datetime # Generic Numeric = int | float ArtistName = str ChannelName = str LabelName = str LabelID = int FlagText = str ColumnName = str ColumnIndex = int ClaimID = str AssetID = str AuditTypeShort = str UPC = str ISRC = str ISWC = str CountryCode2 = str CountryName = str AuditGroupID = int AuditID = int UserID = int FlagID = int VideoID = str ChannelID = str PlaylistID = str ReferenceID = str URL = str Row = dict OptionalRow = Row | None Rows = list[OptionalRow] RowID = int RowIndex = int Email = str HTML = str # UserPermissions PermissionScope = str PermissionLevel = str # Snowflake Database = str Schema = str BoundParams = tuple[str | int, ...] # Format ColorHex8 = str # Misc JWTSubject = str XLSXFormula = str #################################################################### # Custom types #################################################################### # Ownership string (e.g. "100.00% Owned Everywhere") OwnershipStr = NewType("OwnershipStr", str)