import { HexString } from '@polkadot/util/types';
import { GearClaimValue } from './Claim';
import { MailboxItem } from '../types';
import { GearApi } from '../GearApi';
export declare class GearMailbox {
    private api;
    claimValue: GearClaimValue;
    constructor(api: GearApi);
    /**
     * ## Read mailbox connected with account
     * @param accountId
     * @param numberOfMessages _(default 1000)_ number of messages that will be read from mailbox
     * ```javascript
     * const alice = '0xd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d'
     * const api = await GearApi.create();
     * const mailbox = await api.mailbox.read(alice);
     * console.log(mailbox.map(item => item.toHuman()));
     * ```
     */
    read(accountId: HexString, numberOfMessages?: number): Promise<MailboxItem[]>;
    /**
     * ## Get particular message from mailbox
     * @param accountId
     * @param messageId
     * ```javascript
     * const api = await GearApi.create();
     *
     * const alice = '0xd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d'
     * const messageId = '0xe9f3b99f23203d0c032868d3bd0349c8e243119626a8af98a2f4ac5ea6c78947'
     * const mailbox = await api.mailbox.read(alice, messageId);
     * if (mailbox !== null) {
     *   console.log(mailbox.toHuman());
     * }
     * ```
     */
    read(accountId: HexString, messageId: HexString): Promise<MailboxItem>;
}
