import { type LintingResult, LintingRuleCertainty } from '../linter-format';
import type { MergeableRecord } from '../../util/objects';
import { LintingRuleTag } from '../linter-tags';
export interface SoftwareHasLicenseResult extends LintingResult {
    readonly message: string;
}
export interface SoftwareHasLicenseConfig extends MergeableRecord {
    /** Whether to also inspect the DESCRIPTION file for a License field */
    readonly checkDescriptionFile: boolean;
}
export type SoftwareHasLicenseMetadata = MergeableRecord;
export declare const SOFTWARE_HAS_LICENSE: {
    readonly createSearch: () => import("../../search/flowr-search-builder").FlowrSearchBuilder<"from-query", [], import("../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, 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: SoftwareHasLicenseConfig, data: import("../../project/flowr-analyzer").ReadonlyFlowrAnalysisProvider<import("../../r-bridge/parser").KnownParser>) => {
        results: SoftwareHasLicenseResult[];
        '.meta': {};
    };
    readonly prettyPrint: {
        readonly query: (result: SoftwareHasLicenseResult) => string;
        readonly full: (result: SoftwareHasLicenseResult) => string;
    };
    readonly info: {
        readonly name: "Software Has License";
        readonly description: "Checks whether the software project provides a license (via a LICENSE file or the DESCRIPTION file License field).";
        readonly tags: readonly [LintingRuleTag.Documentation, LintingRuleTag.Usability];
        readonly certainty: LintingRuleCertainty.BestEffort;
        readonly defaultConfig: {
            readonly checkDescriptionFile: true;
        };
    };
};
