import type { ApiClient } from '../../http';
import type { CustomExportField, CustomExportFieldCreateRequest, CustomExportFieldsResponse, CustomExportFieldUpdateRequest, ExportFieldsResponse, ExportParams, ExportReportsResponse, ExportTemplate, ExportTemplateCreateRequest, ExportTemplateListParams, ExportTemplateParams, ExportTemplateUpdateRequest, FileResponse } from '../../models';
import { NavigablePage } from '../../models';
import { Resource } from '../Resource';
export declare class ExportResource extends Resource {
    constructor(client: ApiClient);
    generate(params: ExportParams): Promise<FileResponse>;
    send(params: ExportParams): Promise<void>;
    generateFromTemplate(params: ExportTemplateParams): Promise<ArrayBuffer>;
    getFields(scope?: 'project' | 'team' | 'task' | 'todo'): Promise<ExportFieldsResponse>;
    getReportTypes(): Promise<ExportReportsResponse>;
    listTemplates(params?: ExportTemplateListParams): Promise<NavigablePage<ExportTemplate>>;
    searchTemplates(params: ExportTemplateListParams): Promise<NavigablePage<ExportTemplate>>;
    createTemplate(data: ExportTemplateCreateRequest): Promise<ExportTemplate>;
    getTemplate(templateId: string): Promise<ExportTemplate>;
    updateTemplate(templateId: string, data: ExportTemplateUpdateRequest): Promise<ExportTemplate>;
    private normalizeTemplate;
    deleteTemplate(templateId: string): Promise<void>;
    listCustomFields(scope?: 'TASK' | 'PROJECT' | 'TEAM'): Promise<CustomExportFieldsResponse>;
    createCustomField(data: CustomExportFieldCreateRequest): Promise<CustomExportField>;
    getCustomField(fieldId: string): Promise<CustomExportField>;
    updateCustomField(fieldId: string, data: CustomExportFieldUpdateRequest): Promise<CustomExportField>;
    deleteCustomField(fieldId: string): Promise<void>;
}
//# sourceMappingURL=ExportResource.d.ts.map