import { type UserIdResolvable } from '@twurple/common'; import { type HelixCustomRewardRedemptionData, type HelixCustomRewardRedemptionStatus, type HelixCustomRewardRedemptionTargetStatus } from '../../interfaces/endpoints/channelPoints.external'; import { type HelixCreateCustomRewardData, type HelixCustomRewardRedemptionFilter, type HelixPaginatedCustomRewardRedemptionFilter, type HelixUpdateCustomRewardData } from '../../interfaces/endpoints/channelPoints.input'; import { HelixPaginatedRequest } from '../../utils/pagination/HelixPaginatedRequest'; import { type HelixPaginatedResult } from '../../utils/pagination/HelixPaginatedResult'; import { BaseApi } from '../BaseApi'; import { HelixCustomReward } from './HelixCustomReward'; import { HelixCustomRewardRedemption } from './HelixCustomRewardRedemption'; /** * The Helix API methods that deal with channel points. * * Can be accessed using `client.channelPoints` on an {@link ApiClient} instance. * * ## Example * ```ts * const api = new ApiClient({ authProvider }); * const rewards = await api.channelPoints.getCustomRewards('125328655'); * ``` * * @meta category helix * @meta categorizedTitle Channel points */ export declare class HelixChannelPointsApi extends BaseApi { /** * Gets all custom rewards for the given broadcaster. * * @param broadcaster The broadcaster to get the rewards for. * @param onlyManageable Whether to only get rewards that can be managed by the API. */ getCustomRewards(broadcaster: UserIdResolvable, onlyManageable?: boolean): Promise; /** * Gets custom rewards by IDs. * * @param broadcaster The broadcaster to get the rewards for. * @param rewardIds The IDs of the rewards. */ getCustomRewardsByIds(broadcaster: UserIdResolvable, rewardIds: string[]): Promise; /** * Gets a custom reward by ID. * * @param broadcaster The broadcaster to get the reward for. * @param rewardId The ID of the reward. */ getCustomRewardById(broadcaster: UserIdResolvable, rewardId: string): Promise; /** * Creates a new custom reward. * * @param broadcaster The broadcaster to create the reward for. * @param data The reward data. * * @expandParams */ createCustomReward(broadcaster: UserIdResolvable, data: HelixCreateCustomRewardData): Promise; /** * Updates a custom reward. * * @param broadcaster The broadcaster to update the reward for. * @param rewardId The ID of the reward. * @param data The reward data. */ updateCustomReward(broadcaster: UserIdResolvable, rewardId: string, data: HelixUpdateCustomRewardData): Promise; /** * Deletes a custom reward. * * @param broadcaster The broadcaster to delete the reward for. * @param rewardId The ID of the reward. */ deleteCustomReward(broadcaster: UserIdResolvable, rewardId: string): Promise; /** * Gets custom reward redemptions by IDs. * * @param broadcaster The broadcaster to get the redemptions for. * @param rewardId The ID of the reward. * @param redemptionIds The IDs of the redemptions. */ getRedemptionsByIds(broadcaster: UserIdResolvable, rewardId: string, redemptionIds: string[]): Promise; /** * Gets a custom reward redemption by ID. * * @param broadcaster The broadcaster to get the redemption for. * @param rewardId The ID of the reward. * @param redemptionId The ID of the redemption. */ getRedemptionById(broadcaster: UserIdResolvable, rewardId: string, redemptionId: string): Promise; /** * Gets custom reward redemptions for the given broadcaster. * * @param broadcaster The broadcaster to get the redemptions for. * @param rewardId The ID of the reward. * @param status The status of the redemptions to get. * @param filter * * @expandParams */ getRedemptionsForBroadcaster(broadcaster: UserIdResolvable, rewardId: string, status: HelixCustomRewardRedemptionStatus, filter: HelixPaginatedCustomRewardRedemptionFilter): Promise>; /** * Creates a paginator for custom reward redemptions for the given broadcaster. * * @param broadcaster The broadcaster to get the redemptions for. * @param rewardId The ID of the reward. * @param status The status of the redemptions to get. * @param filter * * @expandParams */ getRedemptionsForBroadcasterPaginated(broadcaster: UserIdResolvable, rewardId: string, status: HelixCustomRewardRedemptionStatus, filter: HelixCustomRewardRedemptionFilter): HelixPaginatedRequest; /** * Updates the status of the given redemptions by IDs. * * @param broadcaster The broadcaster to update the redemptions for. * @param rewardId The ID of the reward. * @param redemptionIds The IDs of the redemptions to update. * @param status The status to set for the redemptions. */ updateRedemptionStatusByIds(broadcaster: UserIdResolvable, rewardId: string, redemptionIds: string[], status: HelixCustomRewardRedemptionTargetStatus): Promise; } //# sourceMappingURL=HelixChannelPointsApi.d.ts.map