import { HttpWebRequestService } from '../../services/http-web-request.service';
import { Paged } from '../../models/paged';
import { Task } from '../../models/Task';
import { Observable } from 'rxjs';
import { Workflow } from '../../models/Workflow';
import { Form } from '../../models/Form';
import * as i0 from "@angular/core";
export declare class TasksService {
    private httpService;
    private readonly BASE_URL;
    private readonly WORKFLOW_URL;
    private readonly FORM_URL;
    constructor(httpService: HttpWebRequestService);
    /**
     * Get tasks with pagination and sorting
     * @param skip Number of records to skip
     * @param limit Number of records to take
     * @param sortParam Sort parameter
     * @param sortOrder Sort order ('asc' or 'desc')
     * @returns Promise containing the tasks
     */
    getTasks(skip: number, limit: number, sortParam: string, sortOrder: string): Promise<Paged<Task>>;
    /**
     * Get tasks with additional parameter, pagination and sorting
     * @param param Search parameter
     * @param skip Number of records to skip
     * @param limit Number of records to take
     * @param sortParam Sort parameter
     * @param sortOrder Sort order ('asc' or 'desc')
     * @returns Promise containing the filtered tasks
     */
    getTaskWithParam(param: string, skip: number, limit: number, sortParam: string, sortOrder: string): Promise<Paged<Task>>;
    /**
     * Save multiple tasks
     * @param requests Array of tasks to save
     * @returns Promise containing the save operation result
     */
    saveTasks(requests: Task[]): Promise<any>;
    /**
     * Approve or reject multiple tasks
     * @param requests Array of tasks to save
     * @param isApproval True for approval, false for decline
     * @returns Promise containing the save operation result
     */
    processTasks(requests: Task[], isApproval: boolean): Promise<any>;
    /**
     * Delete multiple tasks
     * @param requestIds Array of request IDs to delete
     * @returns Observable containing the delete operation result
     */
    deleteTasks(requestIds: string[]): Observable<any>;
    getWorkflows(): Promise<Paged<Workflow>>;
    getFormWithParam(param: string): Promise<Paged<Form>>;
    static ɵfac: i0.ɵɵFactoryDeclaration<TasksService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<TasksService>;
}
