import { TopicManager } from '@bsv/overlay';
import { AdmittanceInstructions } from '@bsv/sdk';
import { BanService } from './BanService.js';
/**
 * Filters banned SHIP or SLAP advertisement outputs before the overlay engine
 * admits them into topic storage.
 */
export declare class BanAwareTopicManager implements TopicManager {
    private readonly wrapped;
    private readonly banService;
    private readonly protocol;
    private readonly logger;
    constructor(wrapped: TopicManager, banService: BanService, protocol: 'SHIP' | 'SLAP', logger?: typeof console);
    identifyAdmissibleOutputs(beef: number[], previousCoins: number[], offChainValues?: number[], mode?: 'historical-tx' | 'current-tx' | 'historical-tx-no-spv'): Promise<AdmittanceInstructions>;
    identifyNeededInputs(beef: number[], offChainValues?: number[]): Promise<Array<{
        txid: string;
        outputIndex: number;
    }>>;
    getDocumentation(): Promise<string>;
    getMetaData(): Promise<{
        name: string;
        shortDescription: string;
        iconURL?: string;
        version?: string;
        informationURL?: string;
    }>;
}
//# sourceMappingURL=BanAwareTopicManager.d.ts.map