import type { Effect, Metadata, RealtimeEvent, UIEvent } from '@devvit/protos';
import type { WorkerErrorType } from '@devvit/runtime-lite/client/BrowserLiteClient.js';
import type { FaceplateEvent } from '@reddit/faceplate/event-types.js';
export type DevvitRealtimeSend = {
    event: RealtimeEvent;
};
export type DevvitRealtimeSendEvent = Omit<FaceplateEvent<'devvit-realtime-send'>, 'detail'> & {
    detail: DevvitRealtimeSend;
};
export type DevvitUIEffect = {
    effect: Effect;
    onEvent(event: UIEvent): void;
    metadata?: Metadata | undefined;
};
export type DevvitUIEffectEvent = Omit<FaceplateEvent<'devvit-ui-effect'>, 'detail'> & {
    detail: DevvitUIEffect;
};
export type DevvitUIError = {
    type: WorkerErrorType;
    err: unknown;
};
export declare const DevvitClientPerformanceEventName = "devvit-client-performance-report";
export type DevvitClientPerformanceEvent = {
    /**
     * Duration of the process in ms.
     */
    duration: number;
    /**
     * Name of the process that was measured.
     */
    name: 'time_to_first_frame' | 'init_runtime' | 'fetch_full_bundle' | 'load_full_bundle' | 'blocks_layout';
};
//# sourceMappingURL=events.d.ts.map