import { IAppToolkit } from '../../../app-toolkit/app-toolkit.interface';
import { MetadataItemWithLabel } from '../../../balance/balance-fetcher.interface';
import { PositionPresenterTemplate, ReadonlyBalances } from '../../../position/template/position-presenter.template';
import { SynthetixContractFactory } from '../contracts';
export declare type SynthetixPositionPresenterDataProps = {
    snxPrice: number;
    susdPrice: number;
    collateralBalance: number;
    unlockedSnx: number;
    debtBalance: number;
};
export declare abstract class SynthetixPositionPresenter extends PositionPresenterTemplate<SynthetixPositionPresenterDataProps> {
    protected readonly contractFactory: SynthetixContractFactory;
    protected readonly appToolkit: IAppToolkit;
    abstract snxAddress: string;
    abstract sUSDAddress: string;
    constructor(contractFactory: SynthetixContractFactory, appToolkit: IAppToolkit);
    dataProps(address: string): Promise<SynthetixPositionPresenterDataProps | undefined>;
    metadataItemsForBalanceGroup(groupLabel: string, _balances: ReadonlyBalances, dataProps?: SynthetixPositionPresenterDataProps): MetadataItemWithLabel[];
}
