import type { HelixUser } from '@twurple/api';
import { DataObject } from '@twurple/common';
import { type EventSubChannelBitsUseEventData, type EventSubChannelBitsUseMessagePart, type EventSubChannelBitsUseType } from './EventSubChannelBitsUseEvent.external';
import { EventSubChannelBitsUsePowerUp } from './common/EventSubChannelBitsUsePowerUp';
/**
 * An EventSub event representing bits being used in a channel.
 */
export declare class EventSubChannelBitsUseEvent extends DataObject<EventSubChannelBitsUseEventData> {
    /**
     * The ID of the broadcaster in whose channel the bits were used.
     */
    get broadcasterId(): string;
    /**
     * The name of the broadcaster in whose channel the bits were used.
     */
    get broadcasterName(): string;
    /**
     * The display name of the broadcaster in whose channel the bits were used.
     */
    get broadcasterDisplayName(): string;
    /**
     * Gets more information about the broadcaster.
     */
    getBroadcaster(): Promise<HelixUser>;
    /**
     * The ID of the user who has used bits.
     */
    get userId(): string;
    /**
     * The name of the user who has used bits.
     */
    get userName(): string;
    /**
     * The display name of the user who has used bits.
     */
    get userDisplayName(): string;
    /**
     * Gets more information about the user.
     */
    getUser(): Promise<HelixUser>;
    /**
     * The type of the bits usage.
     */
    get type(): EventSubChannelBitsUseType;
    /**
     * The number of bits used.
     */
    get bits(): number;
    /**
     * The chat message in plain text, or `null` if it's not applicable.
     */
    get messageText(): string | null;
    /**
     * Ordered list of chat message fragments, or `null` if it's not applicable.
     */
    get messageParts(): EventSubChannelBitsUseMessagePart[] | null;
    /**
     * The Power-up data, or `null` if it's not applicable.
     */
    get powerUp(): EventSubChannelBitsUsePowerUp | null;
}
//# sourceMappingURL=EventSubChannelBitsUseEvent.d.ts.map