import { RoomstayEvent } from './RoomstayEvent';
export type RoomstayEventCallback<T extends RoomstayEvent = RoomstayEvent> = (event: T) => Promise<void | boolean>;
/**
 * Roomstay event manager, always used as a global object, but wrapped in a class.
 *
 * Future improvements - Adding on fail / on
 */
declare class RoomstayEventManager {
    raise(event: RoomstayEvent): Promise<void>;
    addEvent<T extends RoomstayEvent = RoomstayEvent>(eventType: RoomstayEvent | string, callback: RoomstayEventCallback<T>, id?: string): boolean;
}
declare const manager: RoomstayEventManager;
export default manager;
