import "../_dnt.polyfills.js";
import { Runtime } from "../runtimes/mod.js";
import type { S3PresignGetParams, S3PresignPutParams, S3RuntimeData } from "../gen/typegraph_core";
import { t } from "../index.js";
export declare class S3Runtime extends Runtime {
    hostSecret: string;
    regionSecret: string;
    accessKeySecret: string;
    secretKeySecret: string;
    pathStyleSecret: string;
    constructor(options: S3RuntimeData);
    /** create a function to presign an S3 GetObject request */
    presignGet(params: S3PresignGetParams): t.Func;
    /** create a function to presign an S3 PutObject request */
    presignPut(params: S3PresignPutParams): t.Func;
    /**
     * create a function to list objects in a bucket
     */
    list(bucket: string): t.Func;
    /** create a function for a file upload */
    upload(bucket: string, overrideFileType?: t.Typedef): t.Func;
    /** create a function for multiple file uploads */
    uploadAll(bucket: string, overrideFileType?: t.Typedef): t.Func;
}
