interface Params {
    [key: string]: any;
}
interface Headers {
    [key: string]: any;
}
interface AWSOptions {
    bucket?: string;
    method?: string;
    protocol?: string;
    headers?: Headers;
    timestamp?: number;
    region?: string;
    expires?: number;
    query: string;
    key: string;
    sessionToken?: string;
    secret: string;
}
export declare const createCanonicalQueryString: (params: Params) => string;
export declare const createCanonicalHeaders: (headers: Headers) => string;
export declare const createSignedHeaders: (headers: Headers) => string;
export declare const createCredentialScope: (time: number, region: string, service: string) => string;
export declare const createStringToSign: (time: number, region: string, service: string, request: string) => string;
export declare const createSignature: (secret: string, time: number, region: string, service: string, stringToSign: string) => any;
export declare const createPresignedS3URL: (name: string, options: AWSOptions) => string;
export declare const createCanonicalRequest: (method: string, pathname: string, query: Params, headers: Headers, payload: unknown) => string;
export declare const createPresignedURL: (method: string, host: string, path: string, service: string, payload: unknown, options: AWSOptions) => string;
export {};
