# generated by update to not change manually
import dataclasses as dt
import typing as t
from enum import Enum
from bungieapi.json import to_json
[docs]class BungieMembershipType(Enum):
"""The types of membership the Accounts system supports.
This is the external facing enum used in place of the internal-only
Bungie.SharedDefinitions.MembershipType.
"""
NONE = 0
TIGER_XBOX = 1
TIGER_PSN = 2
TIGER_STEAM = 3
TIGER_BLIZZARD = 4
TIGER_STADIA = 5
TIGER_DEMON = 10
BUNGIE_NEXT = 254
ALL = (
-1
) # "All" is only valid for searching capabilities: you need to pass the actual matching BungieMembershipType for any query where you pass a known membershipId.
[docs]class BungieCredentialType(Enum):
"""The types of credentials the Accounts system supports.
This is the external facing enum used in place of the internal-only
Bungie.SharedDefinitions.CredentialType.
"""
NONE = 0
XUID = 1
PSNID = 2
WLID = 3
FAKE = 4
FACEBOOK = 5
GOOGLE = 8
WINDOWS = 9
DEMON_ID = 10
STEAM_ID = 12
BATTLE_NET_ID = 14
STADIA_ID = 16
TWITCH_ID = 18
[docs]@dt.dataclass(frozen=True)
class SearchResultOfContentItemPublicContract:
has_more: t.Optional[bool] = None
query: t.Optional["PagedQuery"] = None
replacement_continuation_token: t.Optional[str] = None
results: t.Optional[t.Sequence["ContentItemPublicContract"]] = None
total_results: t.Optional[int] = None
use_total_results: t.Optional[
bool
] = None # If useTotalResults is true, then totalResults represents an accurate count. If False, it does not, and may be estimated/only the size of the current page. Either way, you should probably always only trust hasMore. This is a long-held historical throwback to when we used to do paging with known total results. Those queries toasted our database, and we were left to hastily alter our endpoints and create backward- compatible shims, of which useTotalResults is one.
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"results": to_json(self.results),
"totalResults": to_json(self.total_results),
"hasMore": to_json(self.has_more),
"query": to_json(self.query),
"replacementContinuationToken": to_json(
self.replacement_continuation_token
),
"useTotalResults": to_json(self.use_total_results),
}
[docs]@dt.dataclass(frozen=True)
class SearchResultOfPostResponse:
has_more: t.Optional[bool] = None
query: t.Optional["PagedQuery"] = None
replacement_continuation_token: t.Optional[str] = None
results: t.Optional[t.Sequence["PostResponse"]] = None
total_results: t.Optional[int] = None
use_total_results: t.Optional[
bool
] = None # If useTotalResults is true, then totalResults represents an accurate count. If False, it does not, and may be estimated/only the size of the current page. Either way, you should probably always only trust hasMore. This is a long-held historical throwback to when we used to do paging with known total results. Those queries toasted our database, and we were left to hastily alter our endpoints and create backward- compatible shims, of which useTotalResults is one.
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"results": to_json(self.results),
"totalResults": to_json(self.total_results),
"hasMore": to_json(self.has_more),
"query": to_json(self.query),
"replacementContinuationToken": to_json(
self.replacement_continuation_token
),
"useTotalResults": to_json(self.use_total_results),
}
BungieMembershipTypeArray = t.Sequence["BungieMembershipType"]
[docs]@dt.dataclass(frozen=True)
class SearchResultOfGroupV2Card:
has_more: t.Optional[bool] = None
query: t.Optional["PagedQuery"] = None
replacement_continuation_token: t.Optional[str] = None
results: t.Optional[t.Sequence["GroupV2Card"]] = None
total_results: t.Optional[int] = None
use_total_results: t.Optional[
bool
] = None # If useTotalResults is true, then totalResults represents an accurate count. If False, it does not, and may be estimated/only the size of the current page. Either way, you should probably always only trust hasMore. This is a long-held historical throwback to when we used to do paging with known total results. Those queries toasted our database, and we were left to hastily alter our endpoints and create backward- compatible shims, of which useTotalResults is one.
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"results": to_json(self.results),
"totalResults": to_json(self.total_results),
"hasMore": to_json(self.has_more),
"query": to_json(self.query),
"replacementContinuationToken": to_json(
self.replacement_continuation_token
),
"useTotalResults": to_json(self.use_total_results),
}
[docs]@dt.dataclass(frozen=True)
class SearchResultOfGroupMember:
has_more: t.Optional[bool] = None
query: t.Optional["PagedQuery"] = None
replacement_continuation_token: t.Optional[str] = None
results: t.Optional[t.Sequence["GroupMember"]] = None
total_results: t.Optional[int] = None
use_total_results: t.Optional[
bool
] = None # If useTotalResults is true, then totalResults represents an accurate count. If False, it does not, and may be estimated/only the size of the current page. Either way, you should probably always only trust hasMore. This is a long-held historical throwback to when we used to do paging with known total results. Those queries toasted our database, and we were left to hastily alter our endpoints and create backward- compatible shims, of which useTotalResults is one.
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"results": to_json(self.results),
"totalResults": to_json(self.total_results),
"hasMore": to_json(self.has_more),
"query": to_json(self.query),
"replacementContinuationToken": to_json(
self.replacement_continuation_token
),
"useTotalResults": to_json(self.use_total_results),
}
[docs]@dt.dataclass(frozen=True)
class SearchResultOfGroupBan:
has_more: t.Optional[bool] = None
query: t.Optional["PagedQuery"] = None
replacement_continuation_token: t.Optional[str] = None
results: t.Optional[t.Sequence["GroupBan"]] = None
total_results: t.Optional[int] = None
use_total_results: t.Optional[
bool
] = None # If useTotalResults is true, then totalResults represents an accurate count. If False, it does not, and may be estimated/only the size of the current page. Either way, you should probably always only trust hasMore. This is a long-held historical throwback to when we used to do paging with known total results. Those queries toasted our database, and we were left to hastily alter our endpoints and create backward- compatible shims, of which useTotalResults is one.
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"results": to_json(self.results),
"totalResults": to_json(self.total_results),
"hasMore": to_json(self.has_more),
"query": to_json(self.query),
"replacementContinuationToken": to_json(
self.replacement_continuation_token
),
"useTotalResults": to_json(self.use_total_results),
}
[docs]@dt.dataclass(frozen=True)
class SearchResultOfGroupMemberApplication:
has_more: t.Optional[bool] = None
query: t.Optional["PagedQuery"] = None
replacement_continuation_token: t.Optional[str] = None
results: t.Optional[t.Sequence["GroupMemberApplication"]] = None
total_results: t.Optional[int] = None
use_total_results: t.Optional[
bool
] = None # If useTotalResults is true, then totalResults represents an accurate count. If False, it does not, and may be estimated/only the size of the current page. Either way, you should probably always only trust hasMore. This is a long-held historical throwback to when we used to do paging with known total results. Those queries toasted our database, and we were left to hastily alter our endpoints and create backward- compatible shims, of which useTotalResults is one.
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"results": to_json(self.results),
"totalResults": to_json(self.total_results),
"hasMore": to_json(self.has_more),
"query": to_json(self.query),
"replacementContinuationToken": to_json(
self.replacement_continuation_token
),
"useTotalResults": to_json(self.use_total_results),
}
[docs]@dt.dataclass(frozen=True)
class SearchResultOfGroupMembership:
has_more: t.Optional[bool] = None
query: t.Optional["PagedQuery"] = None
replacement_continuation_token: t.Optional[str] = None
results: t.Optional[t.Sequence["GroupMembership"]] = None
total_results: t.Optional[int] = None
use_total_results: t.Optional[
bool
] = None # If useTotalResults is true, then totalResults represents an accurate count. If False, it does not, and may be estimated/only the size of the current page. Either way, you should probably always only trust hasMore. This is a long-held historical throwback to when we used to do paging with known total results. Those queries toasted our database, and we were left to hastily alter our endpoints and create backward- compatible shims, of which useTotalResults is one.
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"results": to_json(self.results),
"totalResults": to_json(self.total_results),
"hasMore": to_json(self.has_more),
"query": to_json(self.query),
"replacementContinuationToken": to_json(
self.replacement_continuation_token
),
"useTotalResults": to_json(self.use_total_results),
}
[docs]@dt.dataclass(frozen=True)
class SearchResultOfGroupPotentialMembership:
has_more: t.Optional[bool] = None
query: t.Optional["PagedQuery"] = None
replacement_continuation_token: t.Optional[str] = None
results: t.Optional[t.Sequence["GroupPotentialMembership"]] = None
total_results: t.Optional[int] = None
use_total_results: t.Optional[
bool
] = None # If useTotalResults is true, then totalResults represents an accurate count. If False, it does not, and may be estimated/only the size of the current page. Either way, you should probably always only trust hasMore. This is a long-held historical throwback to when we used to do paging with known total results. Those queries toasted our database, and we were left to hastily alter our endpoints and create backward- compatible shims, of which useTotalResults is one.
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"results": to_json(self.results),
"totalResults": to_json(self.total_results),
"hasMore": to_json(self.has_more),
"query": to_json(self.query),
"replacementContinuationToken": to_json(
self.replacement_continuation_token
),
"useTotalResults": to_json(self.use_total_results),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyVendorReceiptsComponent:
data: t.Optional["DestinyVendorReceiptsComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyInventoryComponent:
data: t.Optional["DestinyInventoryComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyProfileComponent:
data: t.Optional["DestinyProfileComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyKiosksComponent:
data: t.Optional["DestinyKiosksComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyPlugSetsComponent:
data: t.Optional["DestinyPlugSetsComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyProfileProgressionComponent:
data: t.Optional["DestinyProfileProgressionComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyPresentationNodesComponent:
data: t.Optional["DestinyPresentationNodesComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyProfileRecordsComponent:
data: t.Optional["DestinyProfileRecordsComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyProfileCollectiblesComponent:
data: t.Optional["DestinyProfileCollectiblesComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyProfileTransitoryComponent:
data: t.Optional["DestinyProfileTransitoryComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyMetricsComponent:
data: t.Optional["DestinyMetricsComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyStringVariablesComponent:
data: t.Optional["DestinyStringVariablesComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint64AndDestinyCharacterComponent:
data: t.Optional[t.Mapping[str, "DestinyCharacterComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint64AndDestinyInventoryComponent:
data: t.Optional[t.Mapping[str, "DestinyInventoryComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint64AndDestinyCharacterProgressionComponent:
data: t.Optional[t.Mapping[str, "DestinyCharacterProgressionComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint64AndDestinyCharacterRenderComponent:
data: t.Optional[t.Mapping[str, "DestinyCharacterRenderComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint64AndDestinyCharacterActivitiesComponent:
data: t.Optional[t.Mapping[str, "DestinyCharacterActivitiesComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint64AndDestinyKiosksComponent:
data: t.Optional[t.Mapping[str, "DestinyKiosksComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint64AndDestinyPlugSetsComponent:
data: t.Optional[t.Mapping[str, "DestinyPlugSetsComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DestinyBaseItemComponentSetOfuint32:
objectives: t.Optional[
"DictionaryComponentResponseOfuint32AndDestinyItemObjectivesComponent"
] = None
perks: t.Optional[
"DictionaryComponentResponseOfuint32AndDestinyItemPerksComponent"
] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"objectives": to_json(self.objectives),
"perks": to_json(self.perks),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfuint32AndDestinyItemObjectivesComponent:
data: t.Optional[t.Mapping[str, "DestinyItemObjectivesComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfuint32AndDestinyItemPerksComponent:
data: t.Optional[t.Mapping[str, "DestinyItemPerksComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint64AndDestinyPresentationNodesComponent:
data: t.Optional[t.Mapping[str, "DestinyPresentationNodesComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint64AndDestinyCharacterRecordsComponent:
data: t.Optional[t.Mapping[str, "DestinyCharacterRecordsComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint64AndDestinyCollectiblesComponent:
data: t.Optional[t.Mapping[str, "DestinyCollectiblesComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint64AndDestinyStringVariablesComponent:
data: t.Optional[t.Mapping[str, "DestinyStringVariablesComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DestinyBaseItemComponentSetOfint64:
objectives: t.Optional[
"DictionaryComponentResponseOfint64AndDestinyItemObjectivesComponent"
] = None
perks: t.Optional[
"DictionaryComponentResponseOfint64AndDestinyItemPerksComponent"
] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"objectives": to_json(self.objectives),
"perks": to_json(self.perks),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint64AndDestinyItemObjectivesComponent:
data: t.Optional[t.Mapping[str, "DestinyItemObjectivesComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint64AndDestinyItemPerksComponent:
data: t.Optional[t.Mapping[str, "DestinyItemPerksComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DestinyItemComponentSetOfint64:
instances: t.Optional[
"DictionaryComponentResponseOfint64AndDestinyItemInstanceComponent"
] = None
objectives: t.Optional[
"DictionaryComponentResponseOfint64AndDestinyItemObjectivesComponent"
] = None
perks: t.Optional[
"DictionaryComponentResponseOfint64AndDestinyItemPerksComponent"
] = None
plug_objectives: t.Optional[
"DictionaryComponentResponseOfint64AndDestinyItemPlugObjectivesComponent"
] = None
plug_states: t.Optional[
"DictionaryComponentResponseOfuint32AndDestinyItemPlugComponent"
] = None
render_data: t.Optional[
"DictionaryComponentResponseOfint64AndDestinyItemRenderComponent"
] = None
reusable_plugs: t.Optional[
"DictionaryComponentResponseOfint64AndDestinyItemReusablePlugsComponent"
] = None
sockets: t.Optional[
"DictionaryComponentResponseOfint64AndDestinyItemSocketsComponent"
] = None
stats: t.Optional[
"DictionaryComponentResponseOfint64AndDestinyItemStatsComponent"
] = None
talent_grids: t.Optional[
"DictionaryComponentResponseOfint64AndDestinyItemTalentGridComponent"
] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"instances": to_json(self.instances),
"renderData": to_json(self.render_data),
"stats": to_json(self.stats),
"sockets": to_json(self.sockets),
"reusablePlugs": to_json(self.reusable_plugs),
"plugObjectives": to_json(self.plug_objectives),
"talentGrids": to_json(self.talent_grids),
"plugStates": to_json(self.plug_states),
"objectives": to_json(self.objectives),
"perks": to_json(self.perks),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint64AndDestinyItemInstanceComponent:
data: t.Optional[t.Mapping[str, "DestinyItemInstanceComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint64AndDestinyItemRenderComponent:
data: t.Optional[t.Mapping[str, "DestinyItemRenderComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint64AndDestinyItemStatsComponent:
data: t.Optional[t.Mapping[str, "DestinyItemStatsComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint64AndDestinyItemSocketsComponent:
data: t.Optional[t.Mapping[str, "DestinyItemSocketsComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint64AndDestinyItemReusablePlugsComponent:
data: t.Optional[t.Mapping[str, "DestinyItemReusablePlugsComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint64AndDestinyItemPlugObjectivesComponent:
data: t.Optional[t.Mapping[str, "DestinyItemPlugObjectivesComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint64AndDestinyItemTalentGridComponent:
data: t.Optional[t.Mapping[str, "DestinyItemTalentGridComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfuint32AndDestinyItemPlugComponent:
data: t.Optional[t.Mapping[str, "DestinyItemPlugComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint64AndDestinyCurrenciesComponent:
data: t.Optional[t.Mapping[str, "DestinyCurrenciesComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyCharacterComponent:
data: t.Optional["DestinyCharacterComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyCharacterProgressionComponent:
data: t.Optional["DestinyCharacterProgressionComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyCharacterRenderComponent:
data: t.Optional["DestinyCharacterRenderComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyCharacterActivitiesComponent:
data: t.Optional["DestinyCharacterActivitiesComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyCharacterRecordsComponent:
data: t.Optional["DestinyCharacterRecordsComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyCollectiblesComponent:
data: t.Optional["DestinyCollectiblesComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyCurrenciesComponent:
data: t.Optional["DestinyCurrenciesComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyItemComponent:
data: t.Optional["DestinyItemComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyItemInstanceComponent:
data: t.Optional["DestinyItemInstanceComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyItemObjectivesComponent:
data: t.Optional["DestinyItemObjectivesComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyItemPerksComponent:
data: t.Optional["DestinyItemPerksComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyItemRenderComponent:
data: t.Optional["DestinyItemRenderComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyItemStatsComponent:
data: t.Optional["DestinyItemStatsComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyItemTalentGridComponent:
data: t.Optional["DestinyItemTalentGridComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyItemSocketsComponent:
data: t.Optional["DestinyItemSocketsComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyItemReusablePlugsComponent:
data: t.Optional["DestinyItemReusablePlugsComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyItemPlugObjectivesComponent:
data: t.Optional["DestinyItemPlugObjectivesComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyVendorGroupComponent:
data: t.Optional["DestinyVendorGroupComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfuint32AndDestinyVendorComponent:
data: t.Optional[t.Mapping[str, "DestinyVendorComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfuint32AndDestinyVendorCategoriesComponent:
data: t.Optional[t.Mapping[str, "DestinyVendorCategoriesComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DestinyVendorSaleItemSetComponentOfDestinyVendorSaleItemComponent:
sale_items: t.Optional[t.Mapping[str, "DestinyVendorSaleItemComponent"]] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"saleItems": to_json(self.sale_items),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfuint32AndPersonalDestinyVendorSaleItemSetComponent:
data: t.Optional[t.Mapping[str, "PersonalDestinyVendorSaleItemSetComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DestinyBaseItemComponentSetOfint32:
objectives: t.Optional[
"DictionaryComponentResponseOfint32AndDestinyItemObjectivesComponent"
] = None
perks: t.Optional[
"DictionaryComponentResponseOfint32AndDestinyItemPerksComponent"
] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"objectives": to_json(self.objectives),
"perks": to_json(self.perks),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint32AndDestinyItemObjectivesComponent:
data: t.Optional[t.Mapping[str, "DestinyItemObjectivesComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint32AndDestinyItemPerksComponent:
data: t.Optional[t.Mapping[str, "DestinyItemPerksComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DestinyItemComponentSetOfint32:
instances: t.Optional[
"DictionaryComponentResponseOfint32AndDestinyItemInstanceComponent"
] = None
objectives: t.Optional[
"DictionaryComponentResponseOfint32AndDestinyItemObjectivesComponent"
] = None
perks: t.Optional[
"DictionaryComponentResponseOfint32AndDestinyItemPerksComponent"
] = None
plug_objectives: t.Optional[
"DictionaryComponentResponseOfint32AndDestinyItemPlugObjectivesComponent"
] = None
plug_states: t.Optional[
"DictionaryComponentResponseOfuint32AndDestinyItemPlugComponent"
] = None
render_data: t.Optional[
"DictionaryComponentResponseOfint32AndDestinyItemRenderComponent"
] = None
reusable_plugs: t.Optional[
"DictionaryComponentResponseOfint32AndDestinyItemReusablePlugsComponent"
] = None
sockets: t.Optional[
"DictionaryComponentResponseOfint32AndDestinyItemSocketsComponent"
] = None
stats: t.Optional[
"DictionaryComponentResponseOfint32AndDestinyItemStatsComponent"
] = None
talent_grids: t.Optional[
"DictionaryComponentResponseOfint32AndDestinyItemTalentGridComponent"
] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"instances": to_json(self.instances),
"renderData": to_json(self.render_data),
"stats": to_json(self.stats),
"sockets": to_json(self.sockets),
"reusablePlugs": to_json(self.reusable_plugs),
"plugObjectives": to_json(self.plug_objectives),
"talentGrids": to_json(self.talent_grids),
"plugStates": to_json(self.plug_states),
"objectives": to_json(self.objectives),
"perks": to_json(self.perks),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint32AndDestinyItemInstanceComponent:
data: t.Optional[t.Mapping[str, "DestinyItemInstanceComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint32AndDestinyItemRenderComponent:
data: t.Optional[t.Mapping[str, "DestinyItemRenderComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint32AndDestinyItemStatsComponent:
data: t.Optional[t.Mapping[str, "DestinyItemStatsComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint32AndDestinyItemSocketsComponent:
data: t.Optional[t.Mapping[str, "DestinyItemSocketsComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint32AndDestinyItemReusablePlugsComponent:
data: t.Optional[t.Mapping[str, "DestinyItemReusablePlugsComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint32AndDestinyItemPlugObjectivesComponent:
data: t.Optional[t.Mapping[str, "DestinyItemPlugObjectivesComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint32AndDestinyItemTalentGridComponent:
data: t.Optional[t.Mapping[str, "DestinyItemTalentGridComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyVendorComponent:
data: t.Optional["DestinyVendorComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SingleComponentResponseOfDestinyVendorCategoriesComponent:
data: t.Optional["DestinyVendorCategoriesComponent"] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfint32AndDestinyVendorSaleItemComponent:
data: t.Optional[t.Mapping[str, "DestinyVendorSaleItemComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfuint32AndDestinyPublicVendorComponent:
data: t.Optional[t.Mapping[str, "DestinyPublicVendorComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DestinyVendorSaleItemSetComponentOfDestinyPublicVendorSaleItemComponent:
sale_items: t.Optional[
t.Mapping[str, "DestinyPublicVendorSaleItemComponent"]
] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"saleItems": to_json(self.sale_items),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfuint32AndPublicDestinyVendorSaleItemSetComponent:
data: t.Optional[t.Mapping[str, "PublicDestinyVendorSaleItemSetComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DestinyItemComponentSetOfuint32:
instances: t.Optional[
"DictionaryComponentResponseOfuint32AndDestinyItemInstanceComponent"
] = None
objectives: t.Optional[
"DictionaryComponentResponseOfuint32AndDestinyItemObjectivesComponent"
] = None
perks: t.Optional[
"DictionaryComponentResponseOfuint32AndDestinyItemPerksComponent"
] = None
plug_objectives: t.Optional[
"DictionaryComponentResponseOfuint32AndDestinyItemPlugObjectivesComponent"
] = None
plug_states: t.Optional[
"DictionaryComponentResponseOfuint32AndDestinyItemPlugComponent"
] = None
render_data: t.Optional[
"DictionaryComponentResponseOfuint32AndDestinyItemRenderComponent"
] = None
reusable_plugs: t.Optional[
"DictionaryComponentResponseOfuint32AndDestinyItemReusablePlugsComponent"
] = None
sockets: t.Optional[
"DictionaryComponentResponseOfuint32AndDestinyItemSocketsComponent"
] = None
stats: t.Optional[
"DictionaryComponentResponseOfuint32AndDestinyItemStatsComponent"
] = None
talent_grids: t.Optional[
"DictionaryComponentResponseOfuint32AndDestinyItemTalentGridComponent"
] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"instances": to_json(self.instances),
"renderData": to_json(self.render_data),
"stats": to_json(self.stats),
"sockets": to_json(self.sockets),
"reusablePlugs": to_json(self.reusable_plugs),
"plugObjectives": to_json(self.plug_objectives),
"talentGrids": to_json(self.talent_grids),
"plugStates": to_json(self.plug_states),
"objectives": to_json(self.objectives),
"perks": to_json(self.perks),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfuint32AndDestinyItemInstanceComponent:
data: t.Optional[t.Mapping[str, "DestinyItemInstanceComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfuint32AndDestinyItemRenderComponent:
data: t.Optional[t.Mapping[str, "DestinyItemRenderComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfuint32AndDestinyItemStatsComponent:
data: t.Optional[t.Mapping[str, "DestinyItemStatsComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfuint32AndDestinyItemSocketsComponent:
data: t.Optional[t.Mapping[str, "DestinyItemSocketsComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfuint32AndDestinyItemReusablePlugsComponent:
data: t.Optional[t.Mapping[str, "DestinyItemReusablePlugsComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfuint32AndDestinyItemPlugObjectivesComponent:
data: t.Optional[t.Mapping[str, "DestinyItemPlugObjectivesComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class DictionaryComponentResponseOfuint32AndDestinyItemTalentGridComponent:
data: t.Optional[t.Mapping[str, "DestinyItemTalentGridComponent"]] = None
disabled: t.Optional[bool] = None # If true, this component is disabled.
privacy: t.Optional["ComponentPrivacySetting"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"data": to_json(self.data),
"privacy": to_json(self.privacy),
"disabled": to_json(self.disabled),
}
[docs]@dt.dataclass(frozen=True)
class SearchResultOfDestinyEntitySearchResultItem:
has_more: t.Optional[bool] = None
query: t.Optional["PagedQuery"] = None
replacement_continuation_token: t.Optional[str] = None
results: t.Optional[t.Sequence["DestinyEntitySearchResultItem"]] = None
total_results: t.Optional[int] = None
use_total_results: t.Optional[
bool
] = None # If useTotalResults is true, then totalResults represents an accurate count. If False, it does not, and may be estimated/only the size of the current page. Either way, you should probably always only trust hasMore. This is a long-held historical throwback to when we used to do paging with known total results. Those queries toasted our database, and we were left to hastily alter our endpoints and create backward- compatible shims, of which useTotalResults is one.
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"results": to_json(self.results),
"totalResults": to_json(self.total_results),
"hasMore": to_json(self.has_more),
"query": to_json(self.query),
"replacementContinuationToken": to_json(
self.replacement_continuation_token
),
"useTotalResults": to_json(self.use_total_results),
}
[docs]@dt.dataclass(frozen=True)
class SearchResultOfTrendingEntry:
has_more: t.Optional[bool] = None
query: t.Optional["PagedQuery"] = None
replacement_continuation_token: t.Optional[str] = None
results: t.Optional[t.Sequence["TrendingEntry"]] = None
total_results: t.Optional[int] = None
use_total_results: t.Optional[
bool
] = None # If useTotalResults is true, then totalResults represents an accurate count. If False, it does not, and may be estimated/only the size of the current page. Either way, you should probably always only trust hasMore. This is a long-held historical throwback to when we used to do paging with known total results. Those queries toasted our database, and we were left to hastily alter our endpoints and create backward- compatible shims, of which useTotalResults is one.
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"results": to_json(self.results),
"totalResults": to_json(self.total_results),
"hasMore": to_json(self.has_more),
"query": to_json(self.query),
"replacementContinuationToken": to_json(
self.replacement_continuation_token
),
"useTotalResults": to_json(self.use_total_results),
}
[docs]@dt.dataclass(frozen=True)
class SearchResultOfFireteamSummary:
has_more: t.Optional[bool] = None
query: t.Optional["PagedQuery"] = None
replacement_continuation_token: t.Optional[str] = None
results: t.Optional[t.Sequence["FireteamSummary"]] = None
total_results: t.Optional[int] = None
use_total_results: t.Optional[
bool
] = None # If useTotalResults is true, then totalResults represents an accurate count. If False, it does not, and may be estimated/only the size of the current page. Either way, you should probably always only trust hasMore. This is a long-held historical throwback to when we used to do paging with known total results. Those queries toasted our database, and we were left to hastily alter our endpoints and create backward- compatible shims, of which useTotalResults is one.
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"results": to_json(self.results),
"totalResults": to_json(self.total_results),
"hasMore": to_json(self.has_more),
"query": to_json(self.query),
"replacementContinuationToken": to_json(
self.replacement_continuation_token
),
"useTotalResults": to_json(self.use_total_results),
}
[docs]@dt.dataclass(frozen=True)
class SearchResultOfFireteamResponse:
has_more: t.Optional[bool] = None
query: t.Optional["PagedQuery"] = None
replacement_continuation_token: t.Optional[str] = None
results: t.Optional[t.Sequence["FireteamResponse"]] = None
total_results: t.Optional[int] = None
use_total_results: t.Optional[
bool
] = None # If useTotalResults is true, then totalResults represents an accurate count. If False, it does not, and may be estimated/only the size of the current page. Either way, you should probably always only trust hasMore. This is a long-held historical throwback to when we used to do paging with known total results. Those queries toasted our database, and we were left to hastily alter our endpoints and create backward- compatible shims, of which useTotalResults is one.
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"results": to_json(self.results),
"totalResults": to_json(self.total_results),
"hasMore": to_json(self.has_more),
"query": to_json(self.query),
"replacementContinuationToken": to_json(
self.replacement_continuation_token
),
"useTotalResults": to_json(self.use_total_results),
}
[docs]@dt.dataclass(frozen=True)
class GlobalAlert:
alert_html: t.Optional[str] = None
alert_key: t.Optional[str] = None
alert_level: t.Optional["GlobalAlertLevel"] = None
alert_link: t.Optional[str] = None
alert_timestamp: t.Optional[str] = None
alert_type: t.Optional["GlobalAlertType"] = None
stream_info: t.Optional["StreamInfo"] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"AlertKey": to_json(self.alert_key),
"AlertHtml": to_json(self.alert_html),
"AlertTimestamp": to_json(self.alert_timestamp),
"AlertLink": to_json(self.alert_link),
"AlertLevel": to_json(self.alert_level),
"AlertType": to_json(self.alert_type),
"StreamInfo": to_json(self.stream_info),
}
[docs]class GlobalAlertLevel(Enum):
UNKNOWN = 0
BLUE = 1
YELLOW = 2
RED = 3
[docs]class GlobalAlertType(Enum):
GLOBAL_ALERT = 0
STREAMING_ALERT = 1
[docs]@dt.dataclass(frozen=True)
class StreamInfo:
channel_name: t.Optional[str] = None
[docs] def to_json(self) -> t.Mapping[str, t.Any]:
return {
"ChannelName": to_json(self.channel_name),
}
from bungieapi.generated.components.schemas.components import (
ComponentPrivacySetting,
) # noqa: E402
# imported at the end to do not case circular imports for type annotations
from bungieapi.generated.components.schemas.content import (
ContentItemPublicContract,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.components.collectibles import (
DestinyCollectiblesComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.components.collectibles import (
DestinyProfileCollectiblesComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.components.inventory import (
DestinyCurrenciesComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.components.inventory import (
DestinyPlatformSilverComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.components.items import (
DestinyItemPlugComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.components.items import (
DestinyItemPlugObjectivesComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.components.items import (
DestinyItemReusablePlugsComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.components.kiosks import (
DestinyKiosksComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.components.metrics import (
DestinyMetricsComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.components.plug_sets import (
DestinyPlugSetsComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.components.presentation import (
DestinyPresentationNodesComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.components.profiles import (
DestinyProfileProgressionComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.components.profiles import (
DestinyProfileTransitoryComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.components.records import (
DestinyCharacterRecordsComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.components.records import (
DestinyProfileRecordsComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.components.string_variables import (
DestinyStringVariablesComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.components.vendors import (
DestinyPublicVendorComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.components.vendors import (
DestinyPublicVendorSaleItemComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.components.vendors import (
DestinyVendorGroupComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.definitions import (
DestinyEntitySearchResultItem,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.entities.characters import (
DestinyCharacterActivitiesComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.entities.characters import (
DestinyCharacterComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.entities.characters import (
DestinyCharacterProgressionComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.entities.characters import (
DestinyCharacterRenderComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.entities.inventory import (
DestinyInventoryComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.entities.items import (
DestinyItemComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.entities.items import (
DestinyItemInstanceComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.entities.items import (
DestinyItemObjectivesComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.entities.items import (
DestinyItemPerksComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.entities.items import (
DestinyItemRenderComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.entities.items import (
DestinyItemSocketsComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.entities.items import (
DestinyItemStatsComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.entities.items import (
DestinyItemTalentGridComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.entities.profiles import (
DestinyProfileComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.entities.profiles import (
DestinyVendorReceiptsComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.entities.vendors import (
DestinyVendorCategoriesComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.entities.vendors import (
DestinyVendorComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.entities.vendors import (
DestinyVendorSaleItemComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.responses import (
PersonalDestinyVendorSaleItemSetComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.destiny.responses import (
PublicDestinyVendorSaleItemSetComponent,
) # noqa: E402
from bungieapi.generated.components.schemas.fireteam import (
FireteamResponse,
) # noqa: E402
from bungieapi.generated.components.schemas.fireteam import (
FireteamSummary,
) # noqa: E402
from bungieapi.generated.components.schemas.forum import PostResponse # noqa: E402
from bungieapi.generated.components.schemas.groups_v2 import GroupBan # noqa: E402
from bungieapi.generated.components.schemas.groups_v2 import GroupMember # noqa: E402
from bungieapi.generated.components.schemas.groups_v2 import (
GroupMemberApplication,
) # noqa: E402
from bungieapi.generated.components.schemas.groups_v2 import (
GroupMembership,
) # noqa: E402
from bungieapi.generated.components.schemas.groups_v2 import (
GroupPotentialMembership,
) # noqa: E402
from bungieapi.generated.components.schemas.groups_v2 import GroupV2Card # noqa: E402
from bungieapi.generated.components.schemas.queries import PagedQuery # noqa: E402
from bungieapi.generated.components.schemas.trending import TrendingEntry # noqa: E402