import { Network } from '../../types';
import { AppTokenPosition } from '../position.interface';
export declare type LoggingTags = {
    network?: Network;
    context?: string;
};
export declare type AppTokenSelectorKey = {
    address: string;
    network: Network;
    tokenId?: number;
};
export declare type GetOne = (opts: AppTokenSelectorKey) => Promise<AppTokenPosition | null>;
export declare type GetMany = (opts: AppTokenSelectorKey[]) => Promise<(AppTokenPosition | null)[]>;
export interface AppTokenSelector {
    getOne: GetOne;
    getMany: GetMany;
}
export declare type CreateAppTokenSelectorOptions = {
    tags?: LoggingTags;
};
export interface AppTokenSelectorFactory {
    create: (opts: CreateAppTokenSelectorOptions) => AppTokenSelector;
}
