import { DataObject } from '@twurple/common'; import { type HelixCustomRewardData } from '../../interfaces/endpoints/channelPoints.external'; import { type HelixCustomRewardImageScale } from '../../interfaces/endpoints/channelPoints.input'; import type { HelixUser } from '../user/HelixUser'; /** * A custom Channel Points reward. */ export declare class HelixCustomReward extends DataObject { /** * The ID of the reward. */ get id(): string; /** * The ID of the broadcaster the reward belongs to. */ get broadcasterId(): string; /** * The name of the broadcaster the reward belongs to. */ get broadcasterName(): string; /** * The display name of the broadcaster the reward belongs to. */ get broadcasterDisplayName(): string; /** * Gets more information about the reward's broadcaster. */ getBroadcaster(): Promise; /** * Gets the URL of the image of the reward in the given scale. * * @param scale The scale of the image. */ getImageUrl(scale: HelixCustomRewardImageScale): string; /** * The background color of the reward. */ get backgroundColor(): string; /** * Whether the reward is enabled (shown to users). */ get isEnabled(): boolean; /** * The channel points cost of the reward. */ get cost(): number; /** * The title of the reward. */ get title(): string; /** * The prompt shown to users when redeeming the reward. */ get prompt(): string; /** * Whether the reward requires user input to be redeemed. */ get userInputRequired(): boolean; /** * The maximum number of redemptions of the reward per stream. `null` means no limit. */ get maxRedemptionsPerStream(): number | null; /** * The maximum number of redemptions of the reward per stream for each user. `null` means no limit. */ get maxRedemptionsPerUserPerStream(): number | null; /** * The cooldown between two redemptions of the reward, in seconds. `null` means no cooldown. */ get globalCooldown(): number | null; /** * Whether the reward is paused. If true, users can't redeem it. */ get isPaused(): boolean; /** * Whether the reward is currently in stock. */ get isInStock(): boolean; /** * How often the reward was already redeemed this stream. * * Only available when the stream is live and `maxRedemptionsPerStream` is set. Otherwise, this is `null`. */ get redemptionsThisStream(): number | null; /** * Whether redemptions should automatically be marked as fulfilled. */ get autoFulfill(): boolean; /** * The time when the cooldown ends. `null` means there is currently no cooldown. */ get cooldownExpiryDate(): Date | null; } //# sourceMappingURL=HelixCustomReward.d.ts.map