import { DataObject } from '@twurple/common';
import { type EventSubChannelBaseModerationEventData, type EventSubChannelModerationAction } from './EventSubChannelModerationEvent.external';
import { type HelixUser } from '@twurple/api';
export declare abstract class EventSubChannelBaseModerationEvent extends DataObject<EventSubChannelBaseModerationEventData> {
    /**
     * The moderation action performed in the channel's chat.
     */
    abstract readonly moderationAction: EventSubChannelModerationAction;
    /**
     * The ID of the broadcaster.
     */
    get broadcasterId(): string;
    /**
     * The name of the broadcaster.
     */
    get broadcasterName(): string;
    /**
     * The display name of the broadcaster.
     */
    get broadcasterDisplayName(): string;
    /**
     * Gets more information about the broadcaster.
     */
    getBroadcaster(): Promise<HelixUser | null>;
    /**
     * The ID of the moderator who performed the action.
     */
    get moderatorId(): string;
    /**
     * The name of the moderator who performed the action.
     */
    get moderatorName(): string;
    /**
     * The display name of the moderator who performed the action.
     */
    get moderatorDisplayName(): string;
    /**
     * Gets more information about the broadcaster.
     */
    getModerator(): Promise<HelixUser | null>;
}
//# sourceMappingURL=EventSubChannelBaseModerationEvent.d.ts.map