/// <reference types="bluebird" />
/// <reference types="long" />
import { RepairingHandler } from './RepairingHandler';
import HazelcastClient from '../HazelcastClient';
import * as Promise from 'bluebird';
import ClientMessage = require('../ClientMessage');
import { UUID } from '../core/UUID';
export declare class MetadataFetcher {
    private client;
    private partitionService;
    private logger;
    constructor(client: HazelcastClient);
    initHandler(handler: RepairingHandler): Promise<void>;
    fetchMetadata(handlers: Map<string, RepairingHandler>): Promise<void>;
    private getObjectNames(handlers);
    protected processResponse(responseMessage: ClientMessage, handlers: Map<string, RepairingHandler>): void;
    protected repairUuids(handler: RepairingHandler, partitionIdUuidList: [number, UUID][]): void;
    protected repairSequences(handler: RepairingHandler, partitionIdSequenceList: [string, [number, Long][]][]): void;
    protected scanMembers(objectNames: string[]): Promise<ClientMessage>[];
}
