import { type QueryCommandInput, type ScanCommandInput, type Select } from '@aws-sdk/client-dynamodb'; import { type Key } from '../interfaces/key.interface'; import type * as Metadata from '../metadata'; import { type ITable, type Table } from '../table'; import { type Filters as QueryFilters } from './filters'; import { QueryOutput } from './output'; import { MagicSearch, type MagicSearchInput } from './search'; import { type IRequestOptions } from '../connections'; interface LocalSecondaryIndexQueryInput extends IRequestOptions { rangeOrder?: 'ASC' | 'DESC'; limit?: number; exclusiveStartKey?: Key; consistent?: boolean; } interface LocalSecondaryIndexScanInput { limit?: number; select?: Select; totalSegments?: number; segment?: number; exclusiveStartKey?: Key; projectionExpression?: string; consistent?: boolean; } export declare class LocalSecondaryIndex { readonly tableClass: ITable; readonly metadata: Metadata.Index.LocalSecondaryIndex; constructor(tableClass: ITable, metadata: Metadata.Index.LocalSecondaryIndex); getQueryInput(input?: LocalSecondaryIndexQueryInput): QueryCommandInput; query(filters: QueryFilters, input?: LocalSecondaryIndexQueryInput): Promise>; getScanInput(input?: LocalSecondaryIndexScanInput): ScanCommandInput; scan(filters: QueryFilters | undefined | null, input?: LocalSecondaryIndexScanInput, requestOptions?: IRequestOptions): Promise>; /** * Query DynamoDB for what you need. * * Starts a MagicSearch using this LocalSecondaryIndex. */ search(filters?: QueryFilters, input?: MagicSearchInput): MagicSearch; } export {};