import { Observable } from 'rxjs';
import { IAction } from '../action';
import { BasicLogger } from '../logging';
interface ISendParams {
    event: string;
    traceKey?: string;
    data?: {
        [key: string]: unknown;
    };
}
export declare const sendOne: (params: ISendParams) => Promise<void>;
export interface ISendActionsParams<A extends IAction, AOut extends A = A> {
    event?: string;
    traceKey?: string;
    filter?: (action: A) => action is AOut;
    transform?: (action: A, params?: ISendActionsParams<A, AOut>) => ISendParams;
    logger?: BasicLogger;
}
export declare const sendActions: <A extends IAction, AOut extends A = A>(params?: ISendActionsParams<A, AOut> | undefined, deps?: {
    sendOne: (params: ISendParams) => Promise<void>;
}) => (input: Observable<A>) => Observable<A>;
export declare function sendAllTimings(): Observable<never>;
export {};
