import * as React from 'react';
import { ApiRefType, PrivateApiRefType } from './useApiRef';
export declare class ApiManager {
    apiRef: React.RefObject<PrivateApiRefType>;
    userApiRef: React.RefObject<ApiRefType> | undefined;
    constructor(apiRef: React.RefObject<PrivateApiRefType>, userApiRef: React.RefObject<ApiRefType> | undefined);
    setMethod: <K extends keyof ApiRefType<any, any>>(name: K, method: ApiRefType<any, any>[K]) => void;
    setPrivateMethod: <K extends "allMessages" | "branch" | "getListener" | "updateScrollButtonState" | "onEditMessage" | "getConversationBlockHeight" | keyof ApiRefType<any, any>>(name: K, method: PrivateApiRefType<any, any>[K]) => void;
    setMethods: (methods: Partial<ApiRefType>) => void;
}
export declare const useApiManager: (apiRef: React.RefObject<PrivateApiRefType>, userApiRef: React.RefObject<ApiRefType> | undefined) => ApiManager;
