import Command from '../../command.js';
/**
 * Usage: ip rule { add | del } SELECTOR ACTION
 *        ip rule { flush | save | restore }
 *        ip rule [ list [ SELECTOR ]]
 * SELECTOR := [ not ] [ from PREFIX ] [ to PREFIX ] [ tos TOS ] [ fwmark FWMARK[/MASK] ]
 *             [ iif STRING ] [ oif STRING ] [ pref NUMBER ] [ l3mdev ]
 *             [ uidrange NUMBER-NUMBER ]
 * ACTION := [ table TABLE_ID ]
 *           [ nat ADDRESS ]
 *           [ realms [SRCREALM/]DSTREALM ]
 *           [ goto NUMBER ]
 *           SUPPRESSOR
 * SUPPRESSOR := [ suppress_prefixlength NUMBER ]
 *               [ suppress_ifgroup DEVGROUP ]
 * TABLE_ID := [ local | main | default | NUMBER ]
 */
export default class IpRuleCommand extends Command<Array<IpRuleEntry>> {
    execute(...args: string[]): Promise<Array<IpRuleEntry>>;
    private parseIpRule;
}
/**
 * unix route model
 * ROUTE := NODE_SPEC [ INFO_SPEC ]
 *
 * NODE_SPEC := [ TYPE ] PREFIX [ tos TOS ] [ table TABLE_ID ] [ proto RTPROTO ] [ scope SCOPE ] [ metric METRIC ]
 */
export declare class IpRuleEntry {
    constructor(line: string);
    id: number;
    from?: string;
    fwmark?: string;
    iif?: string;
    oif?: string;
    uidrange?: string;
    lookup?: string;
    unreachable?: boolean;
    toStirng(): string;
}
//# sourceMappingURL=ipRule.d.ts.map