import type { NonEmptyString } from "../../../common/CustomTypes/NonEmptyString";
import { BuildsServiceClientBase } from "../BuildsManager";
import type { InvalidateOption, LoadFiles, SyncManagerOptions } from "./Types";
export interface ISyncManager {
    sync(rootDir: NonEmptyString, options: LoadFiles): Promise<void>;
    invalidate(rootDir: NonEmptyString, options: InvalidateOption): Promise<void>;
}
export declare class SyncManager extends BuildsServiceClientBase implements ISyncManager {
    #private;
    constructor({ axios, endpoints, getToken, logger, config, errorMapping, }: SyncManagerOptions);
    sync(rootDir: NonEmptyString, options: LoadFiles): Promise<void>;
    private _mapAndValidateFilesExistence;
    private _uploadFilesToStoreUsingPresignedUrl;
    private _uploadFilesToStore;
    private _createFormData;
    invalidate(rootDir: NonEmptyString, options: InvalidateOption): Promise<void>;
}
