import { IAllowanceDataStorage } from "../../../storage/allowanceDataStorage/allowanceDataStorage";
import { AllowanceStorageModel } from "../../../types/allowances/allowanceStorageModel";
import { CheckAllowanceForm, RemoveAllowanceForm } from "../../../types/forms";
export declare class AllowanceRepository {
    private allowanceDataStorage;
    constructor(allowanceDataStorage: IAllowanceDataStorage);
    getAssetAllowances(ledgerAddress: string): Promise<AllowanceStorageModel[]>;
    getAssetAllowance(spenderPrincipal: string, ledgerAddress: string, subAccountId: string, spenderSubId: string): Promise<AllowanceStorageModel>;
    addAllowance(model: CheckAllowanceForm): Promise<AllowanceStorageModel>;
    removeAllowance(form: RemoveAllowanceForm): Promise<void>;
    isExistStorageAllowance(spenderPrincipal: string, ledgerAddress: string, subAccountId: string, spenderSubId: string): Promise<boolean>;
    private getAllowanceDocumentId;
}
