export interface CreateEndpointInput {
    /** The ID of the Outposts. */
    OutpostId: string;
    /** The ID of the security group to use with the endpoint. */
    SecurityGroupId: string;
    /** The ID of the subnet in the selected VPC. The endpoint subnet must belong to the Outpost that has Amazon S3 on Outposts provisioned. */
    SubnetId: string;
    /** The type of access for the network connectivity for the Amazon S3 on Outposts endpoint. To use the Amazon Web Services VPC, choose Private. To use the endpoint with an on-premises network, choose Cust */
    AccessType?: 'Private' | 'CustomerOwnedIp';
    /** The ID of the customer-owned IPv4 address pool (CoIP pool) for the endpoint. IP addresses are allocated from this pool for the endpoint. */
    CustomerOwnedIpv4Pool?: string;
}
export interface DeleteEndpointInput {
    /** The ID of the endpoint. */
    EndpointId: string;
    /** The ID of the Outposts. */
    OutpostId: string;
}
export interface ListEndpointsInput {
    /** The maximum number of endpoints that will be returned in the response. */
    MaxResults?: number;
    /** If a previous response from this operation included a NextToken value, provide that value here to retrieve the next page of results. */
    NextToken?: string;
}
export interface ListOutpostsWithS3Input {
    /** The maximum number of Outposts to return. The limit is 100. */
    MaxResults?: number;
    /** When you can get additional results from the ListOutpostsWithS3 call, a NextToken parameter is returned in the output. You can then pass in a subsequent command to the NextToken parameter to continue  */
    NextToken?: string;
}
export interface ListSharedEndpointsInput {
    /** The ID of the Amazon Web Services Outpost. */
    OutpostId: string;
    /** The maximum number of endpoints that will be returned in the response. */
    MaxResults?: number;
    /** If a previous response from this operation included a NextToken value, you can provide that value here to retrieve the next page of results. */
    NextToken?: string;
}
/** S3Outposts service binding for Step Functions SDK integrations. */
export declare class S3Outposts {
    constructor();
    createEndpoint<T>(params: CreateEndpointInput): Promise<T>;
    deleteEndpoint<T>(params: DeleteEndpointInput): Promise<T>;
    listEndpoints<T>(params: ListEndpointsInput): Promise<T>;
    listOutpostsWithS3<T>(params: ListOutpostsWithS3Input): Promise<T>;
    listSharedEndpoints<T>(params: ListSharedEndpointsInput): Promise<T>;
}
//# sourceMappingURL=S3Outposts.d.ts.map