import { Observable } from 'rxjs';
import { BaseRpcExceptionFilter } from './base-rpc-exception-filter.js';
import { RpcException } from './rpc-exception.js';
import { type RpcExceptionFilterMetadata } from '@nestjs/common/internal';
import type { ArgumentsHost } from '@nestjs/common';
/**
 * @publicApi
 */
export declare class RpcExceptionsHandler extends BaseRpcExceptionFilter {
    private filters;
    /**
     * @param reportUnhandled Log an `RpcException` no filter matched. An event
     * handler has no response stream to carry it back, so it would be lost.
     */
    handle(exception: Error | RpcException, host: ArgumentsHost, reportUnhandled?: boolean): Observable<any>;
    setCustomFilters(filters: RpcExceptionFilterMetadata[]): void;
    invokeCustomFilters<T = any>(exception: T, host: ArgumentsHost): Observable<any> | null;
}
