import { Rule } from "./Rule";
import { ValidationContext } from "../validation/ValidationContext";
import { SendVoteorder } from "../protocol/SendVoteorder";
/**
 * This rule limits age of the post.
 */
export declare class AgeOfPostRule extends Rule {
    rule: string;
    mode: AgeOfPostRule.Mode;
    unit: AgeOfPostRule.TimeUnit;
    value: number;
    constructor(mode: AgeOfPostRule.Mode, value: number, unit: AgeOfPostRule.TimeUnit);
    type(): Rule.Type;
    validate(voteorder: SendVoteorder, context: ValidationContext): Promise<void>;
    validateRuleObject(unprototypedObj: any): void;
    getDescription(): string;
}
export declare namespace AgeOfPostRule {
    enum TimeUnit {
        DAY = "day",
        HOUR = "hour",
        MINUTE = "minute",
        SECOND = "second"
    }
    enum Mode {
        OLDER_THAN = "older_than",
        YOUNGER_THAN = "younger_than"
    }
}
