import { IAppToolkit } from '../../../app-toolkit/app-toolkit.interface';
import { ContractPositionBalance } from '../../../position/position-balance.interface';
import { MetaType } from '../../../position/position.interface';
import { GetDisplayPropsParams, GetTokenDefinitionsParams } from '../../../position/template/contract-position.template.types';
import { CustomContractPositionTemplatePositionFetcher } from '../../../position/template/custom-contract-position.template.position-fetcher';
import { SablierStreamApiClient } from '../common/sablier.stream.api-client';
import { SablierContractFactory, SablierStream } from '../contracts';
export declare type SablierStreamLegacyContractPositionDataProps = {
    deposited: number;
    remaining: number;
};
export declare type SablierStreamLegacyContractPositionDefinition = {
    address: string;
    tokenAddress: string;
};
export declare class EthereumSablierStreamLegacyContractPositionFetcher extends CustomContractPositionTemplatePositionFetcher<SablierStream, SablierStreamLegacyContractPositionDataProps, SablierStreamLegacyContractPositionDefinition> {
    protected readonly appToolkit: IAppToolkit;
    protected readonly contractFactory: SablierContractFactory;
    protected readonly apiClient: SablierStreamApiClient;
    groupLabel: string;
    constructor(appToolkit: IAppToolkit, contractFactory: SablierContractFactory, apiClient: SablierStreamApiClient);
    getDefinitions(): Promise<{
        address: string;
        tokenAddress: string;
    }[]>;
    getContract(address: string): SablierStream;
    getTokenDefinitions({ definition, }: GetTokenDefinitionsParams<SablierStream, SablierStreamLegacyContractPositionDefinition>): Promise<{
        address: string;
        metaType: MetaType;
        network: import("../../../types").Network;
    }[]>;
    getLabel({ contractPosition, }: GetDisplayPropsParams<SablierStream, SablierStreamLegacyContractPositionDataProps>): Promise<string>;
    getTokenBalancesPerPosition(): never;
    getBalances(address: string): Promise<ContractPositionBalance<SablierStreamLegacyContractPositionDataProps>[]>;
}
