import type { SmartNftables } from './nft.manager.js'; import type { INftDnatRule, INftSnatRule, INftMasqueradeRule, TNftProtocol } from './nft.types.js'; /** * Manages NAT (DNAT/SNAT/masquerade) rules. */ export declare class NatManager { private parent; constructor(parent: SmartNftables); /** * Add a port forwarding rule (DNAT + optional masquerade). */ addPortForwarding(groupId: string, rule: INftDnatRule): Promise; /** * Remove a previously added port forwarding group. */ removePortForwarding(groupId: string): Promise; /** * Add SNAT (source NAT) rule. */ addSnat(groupId: string, rule: INftSnatRule): Promise; /** * Add masquerade rule for outgoing traffic. */ addMasquerade(groupId: string, rule: INftMasqueradeRule): Promise; /** * Add port forwarding for a range of ports. * Maps sourceStart..sourceStart+count to targetStart..targetStart+count. */ addPortRange(groupId: string, sourceStart: number, sourceEnd: number, targetHost: string, targetStart: number, protocol?: TNftProtocol): Promise; /** * Remove a port range forwarding group. */ removePortRange(groupId: string): Promise; }