/**
 * Contains CMaker sources
 */
export default class CMakerSources {
    untaggedSources: never[];
    taggedSources: Record<string, string[]>;
    tags: Set<string>;
    disableWeaving: boolean;
    constructor(disableWeaving?: boolean);
    private static VARIABLE_UNTAGGED_SOURCES;
    private static VARIABLE_EXTERNAL_SOURCES;
    /**
     *
     */
    copy(): CMakerSources;
    /**
     * Adds the given sources.
     *
     * @param paths - Array with paths to sources
     */
    addSources(paths: string[]): void;
    /**
     * Add the given sources.
     */
    addSource(path: string): void;
    /**
     * Adds the given sources associated to a tag.
     */
    addTaggedSources(tag: string, paths: string[]): void;
    private addSourcePrivate;
    /**
     * @returns An array with the CMake variables that have source files
     */
    getSourceVariables(): string[];
    private parseSourcePath;
    /**
     * @returns String with the CMake code that declares the current sources
     */
    getCode(): string;
    private addExternalSources;
    /**
     * @returns String with the CMake code for a given source name and values
     */
    private getCodeSource;
}
//# sourceMappingURL=CMakerSources.d.ts.map