export interface ShardFilter {
    /** Contains the type of filter to be applied on the DescribeStream API. Currently, the only value this parameter accepts is CHILD_SHARDS. */
    Type?: 'CHILD_SHARDS';
    /** Contains the shardId of the parent shard for which you are requesting child shards. Sample request: */
    ShardId?: string;
}
/** Represents the input of a DescribeStream operation. */
export interface DescribeStreamInput {
    /** The Amazon Resource Name (ARN) for the stream. */
    StreamArn: string;
    /** The shard ID of the first item that this operation will evaluate. Use the value that was returned for LastEvaluatedShardId in the previous operation. */
    ExclusiveStartShardId?: string;
    /** The maximum number of shard objects to return. The upper limit is 100. */
    Limit?: number;
    /** This optional field contains the filter definition for the DescribeStream API. */
    ShardFilter?: ShardFilter;
}
/** Represents the input of a GetRecords operation. */
export interface GetRecordsInput {
    /** A shard iterator that was retrieved from a previous GetShardIterator operation. This iterator can be used to access the stream records in this shard. */
    ShardIterator: string;
    /** The maximum number of records to return from the shard. The upper limit is 1000. */
    Limit?: number;
}
/** Represents the input of a GetShardIterator operation. */
export interface GetShardIteratorInput {
    /** The identifier of the shard. The iterator will be returned for this shard ID. */
    ShardId: string;
    /** Determines how the shard iterator is used to start reading stream records from the shard: AT_SEQUENCE_NUMBER - Start reading exactly from the position denoted by a specific sequence number. AFTER_SEQU */
    ShardIteratorType: 'TRIM_HORIZON' | 'LATEST' | 'AT_SEQUENCE_NUMBER' | 'AFTER_SEQUENCE_NUMBER';
    /** The Amazon Resource Name (ARN) for the stream. */
    StreamArn: string;
    /** The sequence number of a stream record in the shard from which to start reading. */
    SequenceNumber?: string;
}
/** Represents the input of a ListStreams operation. */
export interface ListStreamsInput {
    /** The ARN (Amazon Resource Name) of the first item that this operation will evaluate. Use the value that was returned for LastEvaluatedStreamArn in the previous operation. */
    ExclusiveStartStreamArn?: string;
    /** The maximum number of streams to return. The upper limit is 100. */
    Limit?: number;
    /** If this parameter is provided, then only the streams associated with this table name are returned. */
    TableName?: string;
}
/** DynamoDB Streams service binding for Step Functions SDK integrations. */
export declare class DynamoDBStreams {
    constructor();
    describeStream<T>(params: DescribeStreamInput): Promise<T>;
    getRecords<T>(params: GetRecordsInput): Promise<T>;
    getShardIterator<T>(params: GetShardIteratorInput): Promise<T>;
    listStreams<T>(params: ListStreamsInput): Promise<T>;
}
//# sourceMappingURL=DynamoDBStreams.d.ts.map