UNPKG

seyfert

Version:

The most advanced framework for discord bots

181 lines (180 loc) 4.67 kB
import type { Snowflake } from '../index'; /** * https://discord.com/developers/docs/monetization/entitlements#entitlement-object-entitlement-structure */ export interface APIEntitlement { /** * ID of the entitlement */ id: Snowflake; /** * ID of the SKU */ sku_id: Snowflake; /** * ID of the user that is granted access to the entitlement's sku */ user_id?: Snowflake; /** * ID of the guild that is granted access to the entitlement's sku */ guild_id?: Snowflake; /** * ID of the parent application */ application_id: Snowflake; /** * Type of entitlement */ type: EntitlementType; /** * Whether the entitlement was deleted */ deleted: boolean; /** * Start date at which the entitlement is valid. */ starts_at: string | null; /** * Date at which the entitlement is no longer valid. */ ends_at: string | null; /** * For consumable items, whether or not the entitlement has been consumed */ consumed?: boolean; } /** * https://discord.com/developers/docs/monetization/entitlements#entitlement-object-entitlement-types */ export declare enum EntitlementType { /** * Entitlement was purchased by user */ Purchase = 1, /** * Entitlement for Discord Nitro subscription */ PremiumSubscription = 2, /** * Entitlement was gifted by developer */ DeveloperGift = 3, /** * Entitlement was purchased by a dev in application test mode */ TestModePurchase = 4, /** * Entitlement was granted when the SKU was free */ FreePurchase = 5, /** * Entitlement was gifted by another user */ UserGift = 6, /** * Entitlement was claimed by user for free as a Nitro Subscriber */ PremiumPurchase = 7, /** * Entitlement was purchased as an app subscription */ ApplicationSubscription = 8 } /** * https://discord.com/developers/docs/monetization/skus#sku-object-sku-structure */ export interface APISKU { /** * ID of SKU */ id: Snowflake; /** * Type of SKU */ type: SKUType; /** * ID of the parent application */ application_id: Snowflake; /** * Customer-facing name of your premium offering */ name: string; /** * System-generated URL slug based on the SKU's name */ slug: string; /** * SKU flags combined as a bitfield * * See https://en.wikipedia.org/wiki/Bit_field */ flags: SKUFlags; } /** * https://discord.com/developers/docs/monetization/skus#sku-object-sku-flags */ export declare enum SKUFlags { /** * SKU is available for purchase */ Available = 4, /** * Recurring SKU that can be purchased by a user and applied to a single server. * Grants access to every user in that server. */ GuildSubscription = 128, /** * Recurring SKU purchased by a user for themselves. Grants access to the purchasing user in every server. */ UserSubscription = 256 } export declare enum SKUType { /** * Durable one-time purchase */ Durable = 2, /** * Consumable one-time purchase */ Consumable = 3, /** * Represents a recurring subscription */ Subscription = 5, /** * System-generated group for each Subscription SKU created */ SubscriptionGroup = 6 } export interface APISubscription { /** ID of the subscription */ id: string; /** ID of the user who is subscribed */ user_id: string; /** List of SKUs subscribed to */ sku_ids: string[]; /** List of entitlements granted for this subscription */ entitlements_ids: string[]; /** List of SKUs that this user will be subscribed to at renewal */ renewal_sku_ids: Snowflake[] | null; /** Start of the current subscription period */ current_period_start: string; /** End of the current subscription period */ current_period_end: string; /** Current status of the subscription */ status: SubscriptionStatus; /** When the subscription was canceled */ canceled_at: string | null; /** ISO3166-1 alpha-2 country code of the payment source used to purchase the subscription. Missing unless queried with a private OAuth scope. */ country?: string; } export declare enum SubscriptionStatus { /** Subscription is active and scheduled to renew. */ Active = 0, /** Subscription is active but will not renew. */ Ending = 1, /** Subscription is inactive and not being charged. */ Inactive = 2 }