detritus-client
Version:
A Typescript NodeJS library to interact with Discord's API, both Rest and Gateway.
109 lines (108 loc) • 3.28 kB
TypeScript
import { ShardClient } from '../client';
import { BaseCollection } from '../collections/basecollection';
import { BaseSet } from '../collections/baseset';
import { SkuTypes } from '../constants';
import { UrlQuery } from '../utils';
import { BaseStructure, BaseStructureData } from './basestructure';
import { Application } from './application';
/**
* Store Listing Structure
* Used for Store Channels ([ChannelGuildStore])
* @category Structure
*/
export declare class StoreListing extends BaseStructure {
readonly _keys: BaseSet<string>;
assets: BaseCollection<string, StoreListingAsset>;
boxArt?: StoreListingAsset;
carouselItems?: Array<{
asset_id?: string;
youtube_video_id?: string;
}>;
description?: string;
entitlementBranchId?: string;
headerBackground?: StoreListingAsset;
headerLogoDarkTheme?: StoreListingAsset;
heroBackground?: StoreListingAsset;
heroVideo?: StoreListingAsset;
id: string;
previewVideo?: StoreListingAsset;
sku: Sku;
summary: string;
tagline?: string;
thumbnail: StoreListingAsset;
constructor(client: ShardClient, data?: BaseStructureData, isClone?: boolean);
get url(): string;
mergeValue(key: string, value: any): void;
}
/**
* Store Listing Asset Structure, used in [StoreListing]
* @category Structure
*/
export declare class StoreListingAsset extends BaseStructure {
readonly _uncloneable = true;
readonly _keys: BaseSet<string>;
readonly storeListing: StoreListing;
height: number;
id: string;
mimeType: string;
size: number;
width: number;
constructor(storeListing: StoreListing, data: BaseStructureData);
}
/**
* Sku Structure, used in [Gift] and [StoreListing]
* @category Structure
*/
export declare class Sku extends BaseStructure {
readonly _keys: BaseSet<string>;
accessType: number;
application?: Application;
applicationId: string;
contentRating?: {
descriptors: Array<number>;
rating: number;
};
contentRatingAgency: number;
dependentSkuId: null | string;
features?: Array<number>;
flags: number;
genres?: Array<number>;
id: string;
legalNotice: string;
locales?: Array<string>;
manifestLabels?: Array<any> | null;
name: string;
premium?: null;
price?: {
amount: number;
currency: string;
};
releaseDate?: null | string;
showAgeGate: boolean;
systemRequirements?: {
[key: string]: {
recommended: any;
minimum: any;
};
};
slug: string;
type: SkuTypes;
constructor(client: ShardClient, data?: BaseStructureData, isClone?: boolean);
get url(): string;
mergeValue(key: string, value: any): void;
}
export declare const keysStoreApplicationAsset: BaseSet<string>;
export declare class StoreApplicationAsset extends BaseStructure {
readonly _keys: BaseSet<string>;
applicationId: string;
filename: string;
height: number;
id: string;
mimeType: string;
size: number;
width: string;
constructor(client: ShardClient, data?: BaseStructureData, isClone?: boolean);
get url(): string;
urlFormat(format?: null | string, query?: UrlQuery): string;
delete(): Promise<any>;
}