import { type LintingResult, LintingRuleCertainty } from '../linter-format';
import { SourceLocation } from '../../util/range';
import type { MergeableRecord } from '../../util/objects';
import { LintingRuleTag } from '../linter-tags';
import type { Writable } from 'ts-essentials';
export interface RoxygenArgsResult extends LintingResult {
    readonly loc: SourceLocation;
    readonly overDocumented?: string[];
    readonly underDocumented?: string[];
}
export type RoxygenArgsConfig = MergeableRecord;
export type RoxygenArgsMetadata = MergeableRecord;
export declare const ROXYGEN_ARGS: {
    readonly createSearch: () => import("../../search/flowr-search-builder").FlowrSearchBuilder<"all", ["filter"], import("../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, Promise<import("../../search/flowr-search").FlowrSearchElements<import("../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, [] | import("../../search/flowr-search").FlowrSearchElement<import("../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>[]>>>;
    readonly processSearchResult: (elements: import("../../search/flowr-search").FlowrSearchElements<import("../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../search/flowr-search").FlowrSearchElement<import("../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>[]>, _config: MergeableRecord, { normalize }: {
        normalize: import("../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
        dataflow: import("../../dataflow/info").DataflowInformation;
        cfg: import("../../control-flow/control-flow-graph").ControlFlowInformation;
        analyzer: import("../../project/flowr-analyzer").ReadonlyFlowrAnalysisProvider;
    }) => {
        results: Writable<RoxygenArgsResult>[];
        '.meta': {};
    };
    readonly prettyPrint: {
        readonly query: (result: RoxygenArgsResult) => string;
        readonly full: (result: RoxygenArgsResult) => string;
    };
    readonly info: {
        readonly name: "Roxygen Arguments";
        readonly tags: readonly [LintingRuleTag.Smell, LintingRuleTag.Documentation, LintingRuleTag.Style];
        readonly certainty: LintingRuleCertainty.BestEffort;
        readonly description: "Checks whether a function has undocumented or overdocumented parameters";
        readonly defaultConfig: {};
    };
};
