import { TableClient, TableEntity } from "@azure/data-tables";
export interface IngestionResult {
    getIngestionStatusCollection(): Promise<IngestionStatus>;
}
export declare const putRecordInTable: (tableClient: TableClient, entity: TableEntity<IngestionStatus>) => Promise<void>;
export declare enum OperationStatus {
    Pending = "Pending",
    Succeede = "Succeeded",
    Failed = "Failed",
    Queued = "Queued",
    Skipped = "Skipped",
    PartiallySucceeded = "PartiallySucceeded"
}
export declare class TableReportIngestionResult implements IngestionResult {
    private ingestionStatusInTableDescription;
    tableClient: TableClient | null;
    constructor(ingestionStatusInTableDescription: IngestionStatusInTableDescription, tableClient?: TableClient | null);
    getIngestionStatusCollection(): Promise<IngestionStatus>;
}
export declare class IngestionStatusResult implements IngestionResult {
    private ingestionStatus;
    constructor(ingestionStatus: IngestionStatus);
    getIngestionStatusCollection(): Promise<IngestionStatus>;
}
export declare class IngestionStatusInTableDescription {
    tableConnectionString: string;
    partitionKey: string;
    rowKey: string;
    constructor(tableConnectionString: string, partitionKey: string, rowKey: string);
}
export interface IngestionStatus {
    Timestamp: string;
    Status: OperationStatus;
    IngestionSourceId: string;
    IngestionSourcePath: string;
    Database: string;
    Table: string;
    UpdatedOn: string;
    Details: string;
}
//# sourceMappingURL=ingestionResult.d.ts.map