import { type AsyncJobNameEnumType } from '@citrineos/base';
import type { TenantDto } from '@citrineos/base';
import { Model } from 'sequelize-typescript';
import { TenantPartner } from '../TenantPartner.js';
export interface PaginatedParams {
    offset?: number;
    limit?: number;
    dateFrom?: Date;
    dateTo?: Date;
}
export declare class AsyncJobStatus extends Model {
    static readonly MODEL_NAME: string;
    jobId: string;
    jobName: AsyncJobNameEnumType;
    tenantPartnerId: number;
    tenantPartner: TenantPartner;
    finishedAt?: Date;
    stoppedAt?: Date | null;
    stopScheduled: boolean;
    isFailed: boolean;
    paginationParams: PaginatedParams;
    totalObjects?: number;
    tenantId: number;
    tenant?: TenantDto;
    static setDefaultTenant(instance: AsyncJobStatus): void;
    constructor(...args: any[]);
    toDTO(): AsyncJobStatusDTO;
}
export declare class AsyncJobStatusDTO {
    jobId: string;
    jobName: AsyncJobNameEnumType;
    tenantPartnerId: number;
    tenantPartner?: TenantPartner;
    createdAt: Date;
    finishedAt?: Date;
    stoppedAt?: Date | null;
    stopScheduled: boolean;
    isFailed?: boolean;
    paginatedParams: PaginatedParams;
    totalObjects?: number;
}
export declare class AsyncJobRequest {
    tenantPartnerId: number;
    paginatedParams: PaginatedParams;
}
