import axios = require("axios");
import { Configuration } from "./configuration";
import * as model from "./model";
export * from "./model";
export * from "./configuration";
/**
 * GroupDocs.Signature Cloud API
 */
export declare class FileApi {
    /**
     * Creates new instance of FileApi
     * @param appSid Application identifier (App SID).
     * @param appKey Application private key (App Key).
     */
    static fromKeys(appSid: string, appKey: string): FileApi;
    /**
     * Creates new instance of FileApi
     * @param config API configuration.
     */
    static fromConfig(config: Configuration): FileApi;
    /**
     * Configuration
     */
    private configuration;
    /**
     * @param config Configuration.
     */
    private constructor();
    /**
     * Copy file
     * @param requestObj contains request parameters
     */
    copyFile(requestObj: model.CopyFileRequest): Promise<axios.AxiosResponse>;
    /**
     * Delete file
     * @param requestObj contains request parameters
     */
    deleteFile(requestObj: model.DeleteFileRequest): Promise<axios.AxiosResponse>;
    /**
     * Download file
     * @param requestObj contains request parameters
     */
    downloadFile(requestObj: model.DownloadFileRequest): Promise<Buffer>;
    /**
     * Move file
     * @param requestObj contains request parameters
     */
    moveFile(requestObj: model.MoveFileRequest): Promise<axios.AxiosResponse>;
    /**
     * Upload file
     * @param requestObj contains request parameters
     */
    uploadFile(requestObj: model.UploadFileRequest): Promise<model.FilesUploadResult>;
}
/**
 * GroupDocs.Signature Cloud API
 */
export declare class FolderApi {
    /**
     * Creates new instance of FolderApi
     * @param appSid Application identifier (App SID).
     * @param appKey Application private key (App Key).
     */
    static fromKeys(appSid: string, appKey: string): FolderApi;
    /**
     * Creates new instance of FolderApi
     * @param config API configuration.
     */
    static fromConfig(config: Configuration): FolderApi;
    /**
     * Configuration
     */
    private configuration;
    /**
     * @param config Configuration.
     */
    private constructor();
    /**
     * Copy folder
     * @param requestObj contains request parameters
     */
    copyFolder(requestObj: model.CopyFolderRequest): Promise<axios.AxiosResponse>;
    /**
     * Create the folder
     * @param requestObj contains request parameters
     */
    createFolder(requestObj: model.CreateFolderRequest): Promise<axios.AxiosResponse>;
    /**
     * Delete folder
     * @param requestObj contains request parameters
     */
    deleteFolder(requestObj: model.DeleteFolderRequest): Promise<axios.AxiosResponse>;
    /**
     * Get all files and folders within a folder
     * @param requestObj contains request parameters
     */
    getFilesList(requestObj: model.GetFilesListRequest): Promise<model.FilesList>;
    /**
     * Move folder
     * @param requestObj contains request parameters
     */
    moveFolder(requestObj: model.MoveFolderRequest): Promise<axios.AxiosResponse>;
}
/**
 * GroupDocs.Signature Cloud API
 */
export declare class InfoApi {
    /**
     * Creates new instance of InfoApi
     * @param appSid Application identifier (App SID).
     * @param appKey Application private key (App Key).
     */
    static fromKeys(appSid: string, appKey: string): InfoApi;
    /**
     * Creates new instance of InfoApi
     * @param config API configuration.
     */
    static fromConfig(config: Configuration): InfoApi;
    /**
     * Configuration
     */
    private configuration;
    /**
     * @param config Configuration.
     */
    private constructor();
    /**
     * Retrieves basic document info - path, extension, formats, size etc
     * @param requestObj contains request parameters
     */
    getInfo(requestObj: model.GetInfoRequest): Promise<model.InfoResult>;
    /**
     * Retrieves supported Barcodes list
     * @param requestObj contains request parameters
     */
    getSupportedBarcodes(): Promise<model.BarcodesResult>;
    /**
     * Retrieves supported file formats list
     * @param requestObj contains request parameters
     */
    getSupportedFileFormats(): Promise<model.FormatsResult>;
    /**
     * Retrieves supported QR-codes list
     * @param requestObj contains request parameters
     */
    getSupportedQRCodes(): Promise<model.QRCodesResult>;
}
/**
 * GroupDocs.Signature Cloud API
 */
export declare class LicenseApi {
    /**
     * Creates new instance of LicenseApi
     * @param appSid Application identifier (App SID).
     * @param appKey Application private key (App Key).
     */
    static fromKeys(appSid: string, appKey: string): LicenseApi;
    /**
     * Creates new instance of LicenseApi
     * @param config API configuration.
     */
    static fromConfig(config: Configuration): LicenseApi;
    /**
     * Configuration
     */
    private configuration;
    /**
     * @param config Configuration.
     */
    private constructor();
    /**
     * Get license consumption
     * @param requestObj contains request parameters
     */
    getConsumptionCredit(): Promise<model.ConsumptionResult>;
}
/**
 * GroupDocs.Signature Cloud API
 */
export declare class PreviewApi {
    /**
     * Creates new instance of PreviewApi
     * @param appSid Application identifier (App SID).
     * @param appKey Application private key (App Key).
     */
    static fromKeys(appSid: string, appKey: string): PreviewApi;
    /**
     * Creates new instance of PreviewApi
     * @param config API configuration.
     */
    static fromConfig(config: Configuration): PreviewApi;
    /**
     * Configuration
     */
    private configuration;
    /**
     * @param config Configuration.
     */
    private constructor();
    /**
     * Creates document preview images
     * @param requestObj contains request parameters
     */
    previewDocument(requestObj: model.PreviewDocumentRequest): Promise<model.PreviewResult>;
}
/**
 * GroupDocs.Signature Cloud API
 */
export declare class SignApi {
    /**
     * Creates new instance of SignApi
     * @param appSid Application identifier (App SID).
     * @param appKey Application private key (App Key).
     */
    static fromKeys(appSid: string, appKey: string): SignApi;
    /**
     * Creates new instance of SignApi
     * @param config API configuration.
     */
    static fromConfig(config: Configuration): SignApi;
    /**
     * Configuration
     */
    private configuration;
    /**
     * @param config Configuration.
     */
    private constructor();
    /**
     * Creates new signatures in the document and saves resultant document into 'Output' folder
     * @param requestObj contains request parameters
     */
    createSignatures(requestObj: model.CreateSignaturesRequest): Promise<model.SignResult>;
    /**
     * Deletes signatures in the document
     * @param requestObj contains request parameters
     */
    deleteSignatures(requestObj: model.DeleteSignaturesRequest): Promise<model.DeleteResult>;
    /**
     * Searches for signatures applied to the document
     * @param requestObj contains request parameters
     */
    searchSignatures(requestObj: model.SearchSignaturesRequest): Promise<model.SearchResult>;
    /**
     * Updates signatures in the document
     * @param requestObj contains request parameters
     */
    updateSignatures(requestObj: model.UpdateSignaturesRequest): Promise<model.UpdateResult>;
    /**
     * Verifies whether document contains signatures that meet the specified criteria
     * @param requestObj contains request parameters
     */
    verifySignatures(requestObj: model.VerifySignaturesRequest): Promise<model.VerifyResult>;
}
/**
 * GroupDocs.Signature Cloud API
 */
export declare class StorageApi {
    /**
     * Creates new instance of StorageApi
     * @param appSid Application identifier (App SID).
     * @param appKey Application private key (App Key).
     */
    static fromKeys(appSid: string, appKey: string): StorageApi;
    /**
     * Creates new instance of StorageApi
     * @param config API configuration.
     */
    static fromConfig(config: Configuration): StorageApi;
    /**
     * Configuration
     */
    private configuration;
    /**
     * @param config Configuration.
     */
    private constructor();
    /**
     * Get disc usage
     * @param requestObj contains request parameters
     */
    getDiscUsage(requestObj: model.GetDiscUsageRequest): Promise<model.DiscUsage>;
    /**
     * Get file versions
     * @param requestObj contains request parameters
     */
    getFileVersions(requestObj: model.GetFileVersionsRequest): Promise<model.FileVersions>;
    /**
     * Check if file or folder exists
     * @param requestObj contains request parameters
     */
    objectExists(requestObj: model.ObjectExistsRequest): Promise<model.ObjectExist>;
    /**
     * Check if storage exists
     * @param requestObj contains request parameters
     */
    storageExists(requestObj: model.StorageExistsRequest): Promise<model.StorageExist>;
}
