import { AbstractProtection, ActionResult, EventConsequences, OwnLifetime, ProtectedRoomsSet, Protection, ProtectionDescription, RoomEvent, UnknownConfig } from "matrix-protection-suite";
import { Draupnir } from "../Draupnir";
import { MatrixRoomID } from "@the-draupnir-project/matrix-basic-types";
type MessageIsMediaProtectionSettings = UnknownConfig;
type MessageIsMediaCapabilities = {
    eventConsequences: EventConsequences;
};
type MessageIsMediaProtectionDescription = ProtectionDescription<Draupnir, MessageIsMediaProtectionSettings, MessageIsMediaCapabilities>;
export declare class MessageIsMediaProtection extends AbstractProtection<MessageIsMediaProtectionDescription> implements Protection<MessageIsMediaProtectionDescription> {
    private readonly draupnir;
    private readonly eventConsequences;
    constructor(description: MessageIsMediaProtectionDescription, lifetime: OwnLifetime<Protection<MessageIsMediaProtectionDescription>>, capabilities: MessageIsMediaCapabilities, protectedRoomsSet: ProtectedRoomsSet, draupnir: Draupnir);
    handleTimelineEvent(room: MatrixRoomID, event: RoomEvent): Promise<ActionResult<void>>;
}
export {};
//# sourceMappingURL=MessageIsMedia.d.ts.map