/// <reference types="yeoman-generator" />
import { GeneratorOptions } from "@manuth/extended-yo-generator";
import { CodeWorkspaceComponent, ITSProjectSettings, TSProjectTasksProcessor } from "@manuth/generator-ts-project";
import { TaskDefinition } from "vscode";
/**
 * Provides the functionality to process tasks for {@link WoltLabGenerator `WoltLabGenerator<TSettings, TOptions>`}s.
 *
 * @template TSettings
 * The type of the settings of the generator.
 *
 * @template TOptions
 * The type of the options of the generator.
 */
export declare class WoltLabTasksProcessor<TSettings extends ITSProjectSettings, TOptions extends GeneratorOptions> extends TSProjectTasksProcessor<TSettings, TOptions> {
    /**
     * Initializes a new instance of the {@link TSProjectTasksProcessor `TSProjectTasksProcessor<TSettings, TOptions>`} class.
     *
     * @param component
     * The component of the processor.
     */
    constructor(component: CodeWorkspaceComponent<TSettings, TOptions>);
    /**
     * @inheritdoc
     *
     * @param task
     * The task to filter.
     *
     * @returns
     * A value indicating whether the task should be included.
     */
    protected FilterTask(task: TaskDefinition): Promise<boolean>;
    /**
     * Processes a task-configuration.
     *
     * @param task
     * The task to process.
     *
     * @returns
     * The processed task.
     */
    protected ProcessTask(task: TaskDefinition): Promise<TaskDefinition>;
}
