import { GetObjectCommand, HeadObjectCommand, GetObjectCommandInput, S3ClientConfig } from '@aws-sdk/client-s3'; import { RequestPresigningArguments } from '@aws-sdk/types'; declare type QueryParams = { [key: string]: string; }; /** * Class to use when interacting with S3 * */ declare class S3ObjectStore { private readonly s3; private readonly middlewareName; private queryParams; constructor(config?: Partial); getQueryParams(): QueryParams; setQueryParams(queryParams: QueryParams): void; getS3SignedUrlWithCustomQueryParams(command: GetObjectCommand | HeadObjectCommand, presignOptions?: RequestPresigningArguments): Promise; /** * Returns an HTTPS URL that can be used to perform a GET on the given object * store URL * * @param {string} objectUrl - the URL of the object to sign * @param {string} [options] - options to pass to S3.getObject * @param {string} [queryParams] - a mapping of parameter key/values to put in the URL * @param {RequestPresigningArguments} presignOptions - presignOptions * @returns {Promise} a signed URL * @throws TypeError - if the URL is not a recognized protocol or cannot be parsed */ signGetObject(objectUrl: string, options?: Partial, queryParams?: QueryParams, presignOptions?: RequestPresigningArguments): Promise; /** * Returns an HTTPS URL that can be used to perform a HEAD on the given object * store URL * * @param {string} objectUrl - the URL of the object to sign * @param {string} [options] - options to pass to S3.getObject * @param {string} [queryParams] - a mapping of parameter key/values to put in the URL * @param {RequestPresigningArguments} presignOptions - presignOptions * @returns {Promise} a signed URL * @throws TypeError - if the URL is not a recognized protocol or cannot be parsed */ signHeadObject(objectUrl: string, options: { [key: string]: string; } | undefined, queryParams: QueryParams, presignOptions?: RequestPresigningArguments): Promise; } export = S3ObjectStore; //# sourceMappingURL=S3ObjectStore.d.ts.map