import { GetTokenHoldersAtSnapshotRequest, GetTotalTokenHoldersAtSnapshotRequest, TakeSnapshotRequest } from '../../request';
import { BaseSecurityInPort } from '../BaseSecurityInPort';
export interface ISecurityInPortSnapshot {
    takeSnapshot(request: TakeSnapshotRequest): Promise<{
        payload: number;
        transactionId: string;
    }>;
    getTokenHoldersAtSnapshot(request: GetTokenHoldersAtSnapshotRequest): Promise<string[]>;
    getTotalTokenHoldersAtSnapshot(request: GetTotalTokenHoldersAtSnapshotRequest): Promise<number>;
}
export declare class SecurityInPortSnapshot extends BaseSecurityInPort implements ISecurityInPortSnapshot {
    takeSnapshot(request: TakeSnapshotRequest): Promise<{
        payload: number;
        transactionId: string;
    }>;
    getTokenHoldersAtSnapshot(request: GetTokenHoldersAtSnapshotRequest): Promise<string[]>;
    getTotalTokenHoldersAtSnapshot(request: GetTotalTokenHoldersAtSnapshotRequest): Promise<number>;
}
