/// <reference types="node" />
declare const _default: {
    /**
     * Lists all existing indexes in the database.
     */
    _LIST: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser) => void;
        readonly transformReply: {
            readonly 2: () => import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>;
            readonly 3: () => import("@redis/client/dist/lib/RESP/types").SetReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>;
        };
    };
    /**
     * Lists all existing indexes in the database.
     */
    _list: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser) => void;
        readonly transformReply: {
            readonly 2: () => import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>;
            readonly 3: () => import("@redis/client/dist/lib/RESP/types").SetReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>;
        };
    };
    /**
     * Alters an existing RediSearch index schema by adding new fields.
     * @param index - The index to alter
     * @param schema - The schema definition containing new fields to add
     */
    ALTER: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, schema: import("./CREATE").RediSearchSchema) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").SimpleStringReply<"OK">;
    };
    /**
     * Alters an existing RediSearch index schema by adding new fields.
     * @param index - The index to alter
     * @param schema - The schema definition containing new fields to add
     */
    alter: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, schema: import("./CREATE").RediSearchSchema) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").SimpleStringReply<"OK">;
    };
    /**
     * Performs an aggregation with a cursor for retrieving large result sets.
     * @param index - Name of the index to query
     * @param query - The aggregation query
     * @param options - Optional parameters:
     *   - All options supported by FT.AGGREGATE
     *   - COUNT: Number of results to return per cursor fetch
     *   - MAXIDLE: Maximum idle time for cursor in milliseconds
     */
    AGGREGATE_WITHCURSOR: {
        readonly IS_READ_ONLY: false;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, query: import("@redis/client").RedisArgument, options?: import("./AGGREGATE_WITHCURSOR").FtAggregateWithCursorOptions | undefined) => void;
        readonly transformReply: {
            readonly 2: (reply: [result: [total: import("@redis/client/dist/lib/RESP/types").UnwrapReply<import("@redis/client/dist/lib/RESP/types").NumberReply<number>>, ...results: import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>[]], cursor: import("@redis/client/dist/lib/RESP/types").NumberReply<number>], preserve?: any, typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./AGGREGATE_WITHCURSOR").AggregateWithCursorReply;
            readonly 3: (reply: import("@redis/client/dist/lib/RESP/types").ReplyUnion, preserve?: any, typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./AGGREGATE_WITHCURSOR").AggregateWithCursorReply;
        };
    };
    /**
     * Performs an aggregation with a cursor for retrieving large result sets.
     * @param index - Name of the index to query
     * @param query - The aggregation query
     * @param options - Optional parameters:
     *   - All options supported by FT.AGGREGATE
     *   - COUNT: Number of results to return per cursor fetch
     *   - MAXIDLE: Maximum idle time for cursor in milliseconds
     */
    aggregateWithCursor: {
        readonly IS_READ_ONLY: false;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, query: import("@redis/client").RedisArgument, options?: import("./AGGREGATE_WITHCURSOR").FtAggregateWithCursorOptions | undefined) => void;
        readonly transformReply: {
            readonly 2: (reply: [result: [total: import("@redis/client/dist/lib/RESP/types").UnwrapReply<import("@redis/client/dist/lib/RESP/types").NumberReply<number>>, ...results: import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>[]], cursor: import("@redis/client/dist/lib/RESP/types").NumberReply<number>], preserve?: any, typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./AGGREGATE_WITHCURSOR").AggregateWithCursorReply;
            readonly 3: (reply: import("@redis/client/dist/lib/RESP/types").ReplyUnion, preserve?: any, typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./AGGREGATE_WITHCURSOR").AggregateWithCursorReply;
        };
    };
    /**
     * Performs an aggregation query on a RediSearch index.
     * @param index - The index name to query
     * @param query - The text query to use as filter, use * to indicate no filtering
     * @param options - Optional parameters for aggregation:
     *   - VERBATIM: disable stemming in query evaluation
     *   - LOAD: specify fields to load from documents
     *   - STEPS: sequence of aggregation steps (GROUPBY, SORTBY, APPLY, LIMIT, FILTER)
     *   - PARAMS: bind parameters for query evaluation
     *   - TIMEOUT: maximum time to run the query
     */
    AGGREGATE: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: false;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, query: import("@redis/client").RedisArgument, options?: import("./AGGREGATE").FtAggregateOptions | undefined) => void;
        readonly transformReply: {
            readonly 2: (rawReply: [total: import("@redis/client/dist/lib/RESP/types").UnwrapReply<import("@redis/client/dist/lib/RESP/types").NumberReply<number>>, ...results: import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>[]], preserve?: any, typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./AGGREGATE").AggregateReply;
            readonly 3: (rawReply: import("@redis/client/dist/lib/RESP/types").ReplyUnion, preserve?: any, typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./AGGREGATE").AggregateReply;
        };
    };
    /**
     * Performs an aggregation query on a RediSearch index.
     * @param index - The index name to query
     * @param query - The text query to use as filter, use * to indicate no filtering
     * @param options - Optional parameters for aggregation:
     *   - VERBATIM: disable stemming in query evaluation
     *   - LOAD: specify fields to load from documents
     *   - STEPS: sequence of aggregation steps (GROUPBY, SORTBY, APPLY, LIMIT, FILTER)
     *   - PARAMS: bind parameters for query evaluation
     *   - TIMEOUT: maximum time to run the query
     */
    aggregate: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: false;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, query: import("@redis/client").RedisArgument, options?: import("./AGGREGATE").FtAggregateOptions | undefined) => void;
        readonly transformReply: {
            readonly 2: (rawReply: [total: import("@redis/client/dist/lib/RESP/types").UnwrapReply<import("@redis/client/dist/lib/RESP/types").NumberReply<number>>, ...results: import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>[]], preserve?: any, typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./AGGREGATE").AggregateReply;
            readonly 3: (rawReply: import("@redis/client/dist/lib/RESP/types").ReplyUnion, preserve?: any, typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./AGGREGATE").AggregateReply;
        };
    };
    /**
     * Adds an alias to a RediSearch index.
     * @param alias - The alias to add
     * @param index - The index name to alias
     */
    ALIASADD: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, alias: import("@redis/client").RedisArgument, index: import("@redis/client").RedisArgument) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").SimpleStringReply<"OK">;
    };
    /**
     * Adds an alias to a RediSearch index.
     * @param alias - The alias to add
     * @param index - The index name to alias
     */
    aliasAdd: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, alias: import("@redis/client").RedisArgument, index: import("@redis/client").RedisArgument) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").SimpleStringReply<"OK">;
    };
    /**
     * Removes an existing alias from a RediSearch index.
     * @param alias - The alias to remove
     */
    ALIASDEL: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, alias: import("@redis/client").RedisArgument) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").SimpleStringReply<"OK">;
    };
    /**
     * Removes an existing alias from a RediSearch index.
     * @param alias - The alias to remove
     */
    aliasDel: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, alias: import("@redis/client").RedisArgument) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").SimpleStringReply<"OK">;
    };
    /**
     * Updates the index pointed to by an existing alias.
     * @param alias - The existing alias to update
     * @param index - The new index name that the alias should point to
     */
    ALIASUPDATE: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, alias: import("@redis/client").RedisArgument, index: import("@redis/client").RedisArgument) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").SimpleStringReply<"OK">;
    };
    /**
     * Updates the index pointed to by an existing alias.
     * @param alias - The existing alias to update
     * @param index - The new index name that the alias should point to
     */
    aliasUpdate: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, alias: import("@redis/client").RedisArgument, index: import("@redis/client").RedisArgument) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").SimpleStringReply<"OK">;
    };
    /**
     * Gets a RediSearch configuration option value.
     * @param option - The name of the configuration option to retrieve
     */
    CONFIG_GET: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, option: string) => void;
        readonly transformReply: (this: void, reply: import("@redis/client/dist/lib/RESP/types").TuplesReply<[import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>, import("@redis/client/dist/lib/RESP/types").BlobStringReply<string> | import("@redis/client/dist/lib/RESP/types").NullReply]>[]) => Record<string, unknown>;
    };
    /**
     * Gets a RediSearch configuration option value.
     * @param option - The name of the configuration option to retrieve
     */
    configGet: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, option: string) => void;
        readonly transformReply: (this: void, reply: import("@redis/client/dist/lib/RESP/types").TuplesReply<[import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>, import("@redis/client/dist/lib/RESP/types").BlobStringReply<string> | import("@redis/client/dist/lib/RESP/types").NullReply]>[]) => Record<string, unknown>;
    };
    /**
     * Sets a RediSearch configuration option value.
     * @param property - The name of the configuration option to set
     * @param value - The value to set for the configuration option
     */
    CONFIG_SET: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, property: Buffer | (string & {}) | "a" | "b", value: import("@redis/client").RedisArgument) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").SimpleStringReply<"OK">;
    };
    /**
     * Sets a RediSearch configuration option value.
     * @param property - The name of the configuration option to set
     * @param value - The value to set for the configuration option
     */
    configSet: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, property: Buffer | (string & {}) | "a" | "b", value: import("@redis/client").RedisArgument) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").SimpleStringReply<"OK">;
    };
    /**
     * Creates a new search index with the given schema and options.
     * @param index - Name of the index to create
     * @param schema - Index schema defining field names and types (TEXT, NUMERIC, GEO, TAG, VECTOR, GEOSHAPE).
     *   Each field can be a single definition or an array to index the same field multiple times with different configurations.
     * @param options - Optional parameters:
     *   - ON: Type of container to index (HASH or JSON)
     *   - PREFIX: Prefixes for document keys to index
     *   - FILTER: Expression that filters indexed documents
     *   - LANGUAGE/LANGUAGE_FIELD: Default language for indexing
     *   - SCORE/SCORE_FIELD: Document ranking parameters
     *   - MAXTEXTFIELDS: Index all text fields without specifying them
     *   - TEMPORARY: Create a temporary index
     *   - NOOFFSETS/NOHL/NOFIELDS/NOFREQS: Index optimization flags
     *   - STOPWORDS: Custom stopword list
     */
    CREATE: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, schema: import("./CREATE").RediSearchSchema, options?: import("./CREATE").CreateOptions | undefined) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").SimpleStringReply<"OK">;
    };
    /**
     * Creates a new search index with the given schema and options.
     * @param index - Name of the index to create
     * @param schema - Index schema defining field names and types (TEXT, NUMERIC, GEO, TAG, VECTOR, GEOSHAPE).
     *   Each field can be a single definition or an array to index the same field multiple times with different configurations.
     * @param options - Optional parameters:
     *   - ON: Type of container to index (HASH or JSON)
     *   - PREFIX: Prefixes for document keys to index
     *   - FILTER: Expression that filters indexed documents
     *   - LANGUAGE/LANGUAGE_FIELD: Default language for indexing
     *   - SCORE/SCORE_FIELD: Document ranking parameters
     *   - MAXTEXTFIELDS: Index all text fields without specifying them
     *   - TEMPORARY: Create a temporary index
     *   - NOOFFSETS/NOHL/NOFIELDS/NOFREQS: Index optimization flags
     *   - STOPWORDS: Custom stopword list
     */
    create: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, schema: import("./CREATE").RediSearchSchema, options?: import("./CREATE").CreateOptions | undefined) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").SimpleStringReply<"OK">;
    };
    /**
     * Deletes a cursor from an index.
     * @param index - The index name that contains the cursor
     * @param cursorId - The cursor ID to delete
     */
    CURSOR_DEL: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, cursorId: import("@redis/client/dist/lib/RESP/types").UnwrapReply<import("@redis/client/dist/lib/RESP/types").NumberReply<number>>) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").SimpleStringReply<"OK">;
    };
    /**
     * Deletes a cursor from an index.
     * @param index - The index name that contains the cursor
     * @param cursorId - The cursor ID to delete
     */
    cursorDel: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, cursorId: import("@redis/client/dist/lib/RESP/types").UnwrapReply<import("@redis/client/dist/lib/RESP/types").NumberReply<number>>) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").SimpleStringReply<"OK">;
    };
    /**
     * Reads from an existing cursor to get more results from an index.
     * @param index - The index name that contains the cursor
     * @param cursor - The cursor ID to read from
     * @param options - Optional parameters:
     *   - COUNT: Maximum number of results to return
     */
    CURSOR_READ: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, cursor: import("@redis/client/dist/lib/RESP/types").UnwrapReply<import("@redis/client/dist/lib/RESP/types").NumberReply<number>>, options?: import("./CURSOR_READ").FtCursorReadOptions | undefined) => void;
        readonly transformReply: {
            readonly 2: (reply: [result: [total: import("@redis/client/dist/lib/RESP/types").UnwrapReply<import("@redis/client/dist/lib/RESP/types").NumberReply<number>>, ...results: import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>[]], cursor: import("@redis/client/dist/lib/RESP/types").NumberReply<number>], preserve?: any, typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./AGGREGATE_WITHCURSOR").AggregateWithCursorReply;
            readonly 3: (reply: import("@redis/client/dist/lib/RESP/types").ReplyUnion, preserve?: any, typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./AGGREGATE_WITHCURSOR").AggregateWithCursorReply;
        };
    };
    /**
     * Reads from an existing cursor to get more results from an index.
     * @param index - The index name that contains the cursor
     * @param cursor - The cursor ID to read from
     * @param options - Optional parameters:
     *   - COUNT: Maximum number of results to return
     */
    cursorRead: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, cursor: import("@redis/client/dist/lib/RESP/types").UnwrapReply<import("@redis/client/dist/lib/RESP/types").NumberReply<number>>, options?: import("./CURSOR_READ").FtCursorReadOptions | undefined) => void;
        readonly transformReply: {
            readonly 2: (reply: [result: [total: import("@redis/client/dist/lib/RESP/types").UnwrapReply<import("@redis/client/dist/lib/RESP/types").NumberReply<number>>, ...results: import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>[]], cursor: import("@redis/client/dist/lib/RESP/types").NumberReply<number>], preserve?: any, typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./AGGREGATE_WITHCURSOR").AggregateWithCursorReply;
            readonly 3: (reply: import("@redis/client/dist/lib/RESP/types").ReplyUnion, preserve?: any, typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./AGGREGATE_WITHCURSOR").AggregateWithCursorReply;
        };
    };
    /**
     * Adds terms to a dictionary.
     * @param dictionary - Name of the dictionary to add terms to
     * @param term - One or more terms to add to the dictionary
     */
    DICTADD: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, dictionary: import("@redis/client").RedisArgument, term: import("@redis/client/dist/lib/commands/generic-transformers").RedisVariadicArgument) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").NumberReply<number>;
    };
    /**
     * Adds terms to a dictionary.
     * @param dictionary - Name of the dictionary to add terms to
     * @param term - One or more terms to add to the dictionary
     */
    dictAdd: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, dictionary: import("@redis/client").RedisArgument, term: import("@redis/client/dist/lib/commands/generic-transformers").RedisVariadicArgument) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").NumberReply<number>;
    };
    /**
     * Deletes terms from a dictionary.
     * @param dictionary - Name of the dictionary to remove terms from
     * @param term - One or more terms to delete from the dictionary
     */
    DICTDEL: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, dictionary: import("@redis/client").RedisArgument, term: import("@redis/client/dist/lib/commands/generic-transformers").RedisVariadicArgument) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").NumberReply<number>;
    };
    /**
     * Deletes terms from a dictionary.
     * @param dictionary - Name of the dictionary to remove terms from
     * @param term - One or more terms to delete from the dictionary
     */
    dictDel: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, dictionary: import("@redis/client").RedisArgument, term: import("@redis/client/dist/lib/commands/generic-transformers").RedisVariadicArgument) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").NumberReply<number>;
    };
    /**
     * Returns all terms in a dictionary.
     * @param dictionary - Name of the dictionary to dump
     */
    DICTDUMP: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, dictionary: import("@redis/client").RedisArgument) => void;
        readonly transformReply: {
            readonly 2: () => import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>;
            readonly 3: () => import("@redis/client/dist/lib/RESP/types").SetReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>;
        };
    };
    /**
     * Returns all terms in a dictionary.
     * @param dictionary - Name of the dictionary to dump
     */
    dictDump: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, dictionary: import("@redis/client").RedisArgument) => void;
        readonly transformReply: {
            readonly 2: () => import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>;
            readonly 3: () => import("@redis/client/dist/lib/RESP/types").SetReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>;
        };
    };
    /**
     * Deletes an index and all associated documents.
     * @param index - Name of the index to delete
     * @param options - Optional parameters:
     *   - DD: Also delete the indexed documents themselves
     */
    DROPINDEX: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, options?: import("./DROPINDEX").FtDropIndexOptions | undefined) => void;
        readonly transformReply: {
            readonly 2: () => import("@redis/client/dist/lib/RESP/types").SimpleStringReply<"OK">;
            readonly 3: () => import("@redis/client/dist/lib/RESP/types").NumberReply<number>;
        };
    };
    /**
     * Deletes an index and all associated documents.
     * @param index - Name of the index to delete
     * @param options - Optional parameters:
     *   - DD: Also delete the indexed documents themselves
     */
    dropIndex: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, options?: import("./DROPINDEX").FtDropIndexOptions | undefined) => void;
        readonly transformReply: {
            readonly 2: () => import("@redis/client/dist/lib/RESP/types").SimpleStringReply<"OK">;
            readonly 3: () => import("@redis/client/dist/lib/RESP/types").NumberReply<number>;
        };
    };
    /**
     * Returns the execution plan for a complex query.
     * @param index - Name of the index to explain query against
     * @param query - The query string to explain
     * @param options - Optional parameters:
     *   - PARAMS: Named parameters to use in the query
     *   - DIALECT: Version of query dialect to use (defaults to 1)
     */
    EXPLAIN: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, query: import("@redis/client").RedisArgument, options?: import("./EXPLAIN").FtExplainOptions | undefined) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").SimpleStringReply<string>;
    };
    /**
     * Returns the execution plan for a complex query.
     * @param index - Name of the index to explain query against
     * @param query - The query string to explain
     * @param options - Optional parameters:
     *   - PARAMS: Named parameters to use in the query
     *   - DIALECT: Version of query dialect to use (defaults to 1)
     */
    explain: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, query: import("@redis/client").RedisArgument, options?: import("./EXPLAIN").FtExplainOptions | undefined) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").SimpleStringReply<string>;
    };
    /**
     * Returns the execution plan for a complex query in a more verbose format than FT.EXPLAIN.
     * @param index - Name of the index to explain query against
     * @param query - The query string to explain
     * @param options - Optional parameters:
     *   - DIALECT: Version of query dialect to use (defaults to 1)
     */
    EXPLAINCLI: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, query: import("@redis/client").RedisArgument, options?: import("./EXPLAINCLI").FtExplainCLIOptions | undefined) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>;
    };
    /**
     * Returns the execution plan for a complex query in a more verbose format than FT.EXPLAIN.
     * @param index - Name of the index to explain query against
     * @param query - The query string to explain
     * @param options - Optional parameters:
     *   - DIALECT: Version of query dialect to use (defaults to 1)
     */
    explainCli: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, query: import("@redis/client").RedisArgument, options?: import("./EXPLAINCLI").FtExplainCLIOptions | undefined) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>;
    };
    /**
     * Performs a hybrid search combining multiple search expressions.
     * Supports multiple SEARCH and VECTOR expressions with various fusion methods.
     *
     * @experimental
     * NOTE: FT.Hybrid is still in experimental state
     * It's behaviour and function signature may change
     *
     * @param index - The index name to search
     * @param options - Hybrid search options including:
     *   - SEARCH: Text search expression with optional scoring
     *   - VSIM: Vector similarity expression with KNN/RANGE methods
     *   - COMBINE: Fusion method (RRF, LINEAR)
     *   - Post-processing operations: LOAD, GROUPBY, APPLY, SORTBY, FILTER
     *   - Tunable options: LIMIT, PARAMS, TIMEOUT
     */
    HYBRID: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, options: import("./HYBRID").FtHybridOptions) => void;
        readonly transformReply: {
            readonly 2: (reply: unknown, _preserve?: any, _typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./HYBRID").HybridSearchResult;
            readonly 3: (reply: unknown, _preserve?: any, _typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./HYBRID").HybridSearchResult;
        };
    };
    /**
     * Performs a hybrid search combining multiple search expressions.
     * Supports multiple SEARCH and VECTOR expressions with various fusion methods.
     *
     * @experimental
     * NOTE: FT.Hybrid is still in experimental state
     * It's behaviour and function signature may change
     *
     * @param index - The index name to search
     * @param options - Hybrid search options including:
     *   - SEARCH: Text search expression with optional scoring
     *   - VSIM: Vector similarity expression with KNN/RANGE methods
     *   - COMBINE: Fusion method (RRF, LINEAR)
     *   - Post-processing operations: LOAD, GROUPBY, APPLY, SORTBY, FILTER
     *   - Tunable options: LIMIT, PARAMS, TIMEOUT
     */
    hybrid: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, options: import("./HYBRID").FtHybridOptions) => void;
        readonly transformReply: {
            readonly 2: (reply: unknown, _preserve?: any, _typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./HYBRID").HybridSearchResult;
            readonly 3: (reply: unknown, _preserve?: any, _typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./HYBRID").HybridSearchResult;
        };
    };
    /**
     * Returns information and statistics about an index.
     * @param index - Name of the index to get information about
     */
    INFO: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument) => void;
        readonly transformReply: {
            readonly 2: (reply: unknown[], preserve?: unknown, typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./INFO").InfoReply;
            readonly 3: () => import("./INFO").InfoReply;
        };
    };
    /**
     * Returns information and statistics about an index.
     * @param index - Name of the index to get information about
     */
    info: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument) => void;
        readonly transformReply: {
            readonly 2: (reply: unknown[], preserve?: unknown, typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./INFO").InfoReply;
            readonly 3: () => import("./INFO").InfoReply;
        };
    };
    /**
     * Profiles the execution of a search query for performance analysis.
     * @param index - Name of the index to profile query against
     * @param query - The search query to profile
     * @param options - Optional parameters:
     *   - LIMITED: Collect limited timing information only
     *   - All options supported by FT.SEARCH command
     */
    PROFILESEARCH: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, query: import("@redis/client").RedisArgument, options?: (import("./PROFILE_SEARCH").ProfileOptions & import("./SEARCH").FtSearchOptions) | undefined) => void;
        readonly transformReply: {
            readonly 2: (reply: [import("./SEARCH").SearchRawReply, import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").ReplyUnion>], preserve?: any, typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./PROFILE_SEARCH").ProfileReplyResp2;
            readonly 3: (reply: import("@redis/client/dist/lib/RESP/types").ReplyUnion, preserve?: any, typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./PROFILE_SEARCH").ProfileReplyResp2;
        };
    };
    /**
     * Profiles the execution of a search query for performance analysis.
     * @param index - Name of the index to profile query against
     * @param query - The search query to profile
     * @param options - Optional parameters:
     *   - LIMITED: Collect limited timing information only
     *   - All options supported by FT.SEARCH command
     */
    profileSearch: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, query: import("@redis/client").RedisArgument, options?: (import("./PROFILE_SEARCH").ProfileOptions & import("./SEARCH").FtSearchOptions) | undefined) => void;
        readonly transformReply: {
            readonly 2: (reply: [import("./SEARCH").SearchRawReply, import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").ReplyUnion>], preserve?: any, typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./PROFILE_SEARCH").ProfileReplyResp2;
            readonly 3: (reply: import("@redis/client/dist/lib/RESP/types").ReplyUnion, preserve?: any, typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./PROFILE_SEARCH").ProfileReplyResp2;
        };
    };
    /**
     * Profiles the execution of an aggregation query for performance analysis.
     * @param index - Name of the index to profile query against
     * @param query - The aggregation query to profile
     * @param options - Optional parameters:
     *   - LIMITED: Collect limited timing information only
     *   - All options supported by FT.AGGREGATE command
     */
    PROFILEAGGREGATE: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: string, query: string, options?: (import("./PROFILE_SEARCH").ProfileOptions & import("./AGGREGATE").FtAggregateOptions) | undefined) => void;
        readonly transformReply: {
            readonly 2: (reply: [[total: import("@redis/client/dist/lib/RESP/types").UnwrapReply<import("@redis/client/dist/lib/RESP/types").NumberReply<number>>, ...results: import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>[]], import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").ReplyUnion>], preserve?: any, typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./PROFILE_SEARCH").ProfileReplyResp2;
            readonly 3: (reply: import("@redis/client/dist/lib/RESP/types").ReplyUnion, preserve?: any, typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./PROFILE_SEARCH").ProfileReplyResp2;
        };
    };
    /**
     * Profiles the execution of an aggregation query for performance analysis.
     * @param index - Name of the index to profile query against
     * @param query - The aggregation query to profile
     * @param options - Optional parameters:
     *   - LIMITED: Collect limited timing information only
     *   - All options supported by FT.AGGREGATE command
     */
    profileAggregate: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: string, query: string, options?: (import("./PROFILE_SEARCH").ProfileOptions & import("./AGGREGATE").FtAggregateOptions) | undefined) => void;
        readonly transformReply: {
            readonly 2: (reply: [[total: import("@redis/client/dist/lib/RESP/types").UnwrapReply<import("@redis/client/dist/lib/RESP/types").NumberReply<number>>, ...results: import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>[]], import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").ReplyUnion>], preserve?: any, typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./PROFILE_SEARCH").ProfileReplyResp2;
            readonly 3: (reply: import("@redis/client/dist/lib/RESP/types").ReplyUnion, preserve?: any, typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./PROFILE_SEARCH").ProfileReplyResp2;
        };
    };
    /**
     * Performs a search query but returns only document ids without their contents.
     * @param args - Same parameters as FT.SEARCH:
     *   - parser: The command parser
     *   - index: Name of the index to search
     *   - query: The text query to search
     *   - options: Optional search parameters
     */
    SEARCH_NOCONTENT: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, query: import("@redis/client").RedisArgument, options?: import("./SEARCH").FtSearchOptions | undefined) => void;
        readonly transformReply: {
            readonly 2: (reply: import("./SEARCH").SearchRawReply) => import("./SEARCH_NOCONTENT").SearchNoContentReply;
            readonly 3: (reply: import("@redis/client/dist/lib/RESP/types").ReplyUnion, preserve?: any, typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./SEARCH_NOCONTENT").SearchNoContentReply;
        };
    };
    /**
     * Performs a search query but returns only document ids without their contents.
     * @param args - Same parameters as FT.SEARCH:
     *   - parser: The command parser
     *   - index: Name of the index to search
     *   - query: The text query to search
     *   - options: Optional search parameters
     */
    searchNoContent: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, query: import("@redis/client").RedisArgument, options?: import("./SEARCH").FtSearchOptions | undefined) => void;
        readonly transformReply: {
            readonly 2: (reply: import("./SEARCH").SearchRawReply) => import("./SEARCH_NOCONTENT").SearchNoContentReply;
            readonly 3: (reply: import("@redis/client/dist/lib/RESP/types").ReplyUnion, preserve?: any, typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./SEARCH_NOCONTENT").SearchNoContentReply;
        };
    };
    /**
     * Searches a RediSearch index with the given query.
     * @param index - The index name to search
     * @param query - The text query to search. For syntax, see https://redis.io/docs/stack/search/reference/query_syntax
     * @param options - Optional search parameters including:
     *   - VERBATIM: do not try to use stemming for query expansion
     *   - NOSTOPWORDS: do not filter stopwords from the query
     *   - INKEYS/INFIELDS: restrict the search to specific keys/fields
     *   - RETURN: limit which fields are returned
     *   - SUMMARIZE/HIGHLIGHT: create search result highlights
     *   - LIMIT: pagination control
     *   - SORTBY: sort results by a specific field
     *   - PARAMS: bind parameters to the query
     */
    SEARCH: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, query: import("@redis/client").RedisArgument, options?: import("./SEARCH").FtSearchOptions | undefined) => void;
        readonly transformReply: {
            readonly 2: (reply: import("./SEARCH").SearchRawReply, _preserve?: any, _typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./SEARCH").SearchReply;
            readonly 3: (rawReply: import("@redis/client/dist/lib/RESP/types").ReplyUnion, preserve?: any, typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./SEARCH").SearchReply;
        };
    };
    /**
     * Searches a RediSearch index with the given query.
     * @param index - The index name to search
     * @param query - The text query to search. For syntax, see https://redis.io/docs/stack/search/reference/query_syntax
     * @param options - Optional search parameters including:
     *   - VERBATIM: do not try to use stemming for query expansion
     *   - NOSTOPWORDS: do not filter stopwords from the query
     *   - INKEYS/INFIELDS: restrict the search to specific keys/fields
     *   - RETURN: limit which fields are returned
     *   - SUMMARIZE/HIGHLIGHT: create search result highlights
     *   - LIMIT: pagination control
     *   - SORTBY: sort results by a specific field
     *   - PARAMS: bind parameters to the query
     */
    search: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, query: import("@redis/client").RedisArgument, options?: import("./SEARCH").FtSearchOptions | undefined) => void;
        readonly transformReply: {
            readonly 2: (reply: import("./SEARCH").SearchRawReply, _preserve?: any, _typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./SEARCH").SearchReply;
            readonly 3: (rawReply: import("@redis/client/dist/lib/RESP/types").ReplyUnion, preserve?: any, typeMapping?: import("@redis/client").TypeMapping | undefined) => import("./SEARCH").SearchReply;
        };
    };
    /**
     * Performs spelling correction on a search query.
     * @param index - Name of the index to use for spelling corrections
     * @param query - The search query to check for spelling
     * @param options - Optional parameters:
     *   - DISTANCE: Maximum Levenshtein distance for spelling suggestions
     *   - TERMS: Custom dictionary terms to include/exclude
     *   - DIALECT: Version of query dialect to use (defaults to 1)
     */
    SPELLCHECK: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, query: import("@redis/client").RedisArgument, options?: import("./SPELLCHECK").FtSpellCheckOptions | undefined) => void;
        readonly transformReply: {
            readonly 2: (rawReply: [_: string, term: string, suggestions: [score: string, suggestion: string][]][]) => {
                term: string;
                suggestions: {
                    score: number;
                    suggestion: string;
                }[];
            }[];
            readonly 3: (rawReply: import("@redis/client/dist/lib/RESP/types").ReplyUnion) => {
                term: string;
                suggestions: {
                    score: number;
                    suggestion: string;
                }[];
            }[];
        };
    };
    /**
     * Performs spelling correction on a search query.
     * @param index - Name of the index to use for spelling corrections
     * @param query - The search query to check for spelling
     * @param options - Optional parameters:
     *   - DISTANCE: Maximum Levenshtein distance for spelling suggestions
     *   - TERMS: Custom dictionary terms to include/exclude
     *   - DIALECT: Version of query dialect to use (defaults to 1)
     */
    spellCheck: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, query: import("@redis/client").RedisArgument, options?: import("./SPELLCHECK").FtSpellCheckOptions | undefined) => void;
        readonly transformReply: {
            readonly 2: (rawReply: [_: string, term: string, suggestions: [score: string, suggestion: string][]][]) => {
                term: string;
                suggestions: {
                    score: number;
                    suggestion: string;
                }[];
            }[];
            readonly 3: (rawReply: import("@redis/client/dist/lib/RESP/types").ReplyUnion) => {
                term: string;
                suggestions: {
                    score: number;
                    suggestion: string;
                }[];
            }[];
        };
    };
    /**
     * Adds a suggestion string to an auto-complete suggestion dictionary.
     * @param key - The suggestion dictionary key
     * @param string - The suggestion string to add
     * @param score - The suggestion score used for sorting
     * @param options - Optional parameters:
     *   - INCR: If true, increment the existing entry's score
     *   - PAYLOAD: Optional payload to associate with the suggestion
     */
    SUGADD: {
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, key: import("@redis/client").RedisArgument, string: import("@redis/client").RedisArgument, score: number, options?: import("./SUGADD").FtSugAddOptions | undefined) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").NumberReply<number>;
    };
    /**
     * Adds a suggestion string to an auto-complete suggestion dictionary.
     * @param key - The suggestion dictionary key
     * @param string - The suggestion string to add
     * @param score - The suggestion score used for sorting
     * @param options - Optional parameters:
     *   - INCR: If true, increment the existing entry's score
     *   - PAYLOAD: Optional payload to associate with the suggestion
     */
    sugAdd: {
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, key: import("@redis/client").RedisArgument, string: import("@redis/client").RedisArgument, score: number, options?: import("./SUGADD").FtSugAddOptions | undefined) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").NumberReply<number>;
    };
    /**
     * Deletes a string from a suggestion dictionary.
     * @param key - The suggestion dictionary key
     * @param string - The suggestion string to delete
     */
    SUGDEL: {
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, key: import("@redis/client").RedisArgument, string: import("@redis/client").RedisArgument) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").NumberReply<0 | 1>;
    };
    /**
     * Deletes a string from a suggestion dictionary.
     * @param key - The suggestion dictionary key
     * @param string - The suggestion string to delete
     */
    sugDel: {
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, key: import("@redis/client").RedisArgument, string: import("@redis/client").RedisArgument) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").NumberReply<0 | 1>;
    };
    /**
     * Gets completion suggestions with their payloads from a suggestion dictionary.
     * @param args - Same parameters as FT.SUGGET:
     *   - parser: The command parser
     *   - key: The suggestion dictionary key
     *   - prefix: The prefix to get completion suggestions for
     *   - options: Optional parameters for fuzzy matching and max results
     */
    SUGGET_WITHPAYLOADS: {
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, key: import("@redis/client").RedisArgument, prefix: import("@redis/client").RedisArgument, options?: import("./SUGGET").FtSugGetOptions | undefined) => void;
        readonly transformReply: (this: void, reply: import("@redis/client/dist/lib/RESP/types").NullReply | import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>[]) => {
            suggestion: import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>;
            payload: import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>;
        }[] | null;
    };
    /**
     * Gets completion suggestions with their payloads from a suggestion dictionary.
     * @param args - Same parameters as FT.SUGGET:
     *   - parser: The command parser
     *   - key: The suggestion dictionary key
     *   - prefix: The prefix to get completion suggestions for
     *   - options: Optional parameters for fuzzy matching and max results
     */
    sugGetWithPayloads: {
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, key: import("@redis/client").RedisArgument, prefix: import("@redis/client").RedisArgument, options?: import("./SUGGET").FtSugGetOptions | undefined) => void;
        readonly transformReply: (this: void, reply: import("@redis/client/dist/lib/RESP/types").NullReply | import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>[]) => {
            suggestion: import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>;
            payload: import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>;
        }[] | null;
    };
    /**
     * Gets completion suggestions with their scores and payloads from a suggestion dictionary.
     * @param args - Same parameters as FT.SUGGET:
     *   - parser: The command parser
     *   - key: The suggestion dictionary key
     *   - prefix: The prefix to get completion suggestions for
     *   - options: Optional parameters for fuzzy matching and max results
     */
    SUGGET_WITHSCORES_WITHPAYLOADS: {
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, key: import("@redis/client").RedisArgument, prefix: import("@redis/client").RedisArgument, options?: import("./SUGGET").FtSugGetOptions | undefined) => void;
        readonly transformReply: {
            readonly 2: (reply: import("@redis/client/dist/lib/RESP/types").NullReply | import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>[], preserve?: unknown, typeMapping?: import("@redis/client").TypeMapping | undefined) => {
                suggestion: import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>;
                score: import("@redis/client/dist/lib/RESP/types").DoubleReply<number>;
                payload: import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>;
            }[] | null;
            readonly 3: (reply: import("@redis/client/dist/lib/RESP/types").NullReply | (import("@redis/client/dist/lib/RESP/types").BlobStringReply<string> | import("@redis/client/dist/lib/RESP/types").DoubleReply<number>)[]) => {
                suggestion: import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>;
                score: import("@redis/client/dist/lib/RESP/types").DoubleReply<number>;
                payload: import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>;
            }[] | null;
        };
    };
    /**
     * Gets completion suggestions with their scores and payloads from a suggestion dictionary.
     * @param args - Same parameters as FT.SUGGET:
     *   - parser: The command parser
     *   - key: The suggestion dictionary key
     *   - prefix: The prefix to get completion suggestions for
     *   - options: Optional parameters for fuzzy matching and max results
     */
    sugGetWithScoresWithPayloads: {
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, key: import("@redis/client").RedisArgument, prefix: import("@redis/client").RedisArgument, options?: import("./SUGGET").FtSugGetOptions | undefined) => void;
        readonly transformReply: {
            readonly 2: (reply: import("@redis/client/dist/lib/RESP/types").NullReply | import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>[], preserve?: unknown, typeMapping?: import("@redis/client").TypeMapping | undefined) => {
                suggestion: import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>;
                score: import("@redis/client/dist/lib/RESP/types").DoubleReply<number>;
                payload: import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>;
            }[] | null;
            readonly 3: (reply: import("@redis/client/dist/lib/RESP/types").NullReply | (import("@redis/client/dist/lib/RESP/types").BlobStringReply<string> | import("@redis/client/dist/lib/RESP/types").DoubleReply<number>)[]) => {
                suggestion: import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>;
                score: import("@redis/client/dist/lib/RESP/types").DoubleReply<number>;
                payload: import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>;
            }[] | null;
        };
    };
    /**
     * Gets completion suggestions with their scores from a suggestion dictionary.
     * @param args - Same parameters as FT.SUGGET:
     *   - parser: The command parser
     *   - key: The suggestion dictionary key
     *   - prefix: The prefix to get completion suggestions for
     *   - options: Optional parameters for fuzzy matching and max results
     */
    SUGGET_WITHSCORES: {
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, key: import("@redis/client").RedisArgument, prefix: import("@redis/client").RedisArgument, options?: import("./SUGGET").FtSugGetOptions | undefined) => void;
        readonly transformReply: {
            readonly 2: (reply: import("@redis/client/dist/lib/RESP/types").NullReply | import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>[], preserve?: unknown, typeMapping?: import("@redis/client").TypeMapping | undefined) => {
                suggestion: import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>;
                score: import("@redis/client/dist/lib/RESP/types").DoubleReply<number>;
            }[] | null;
            readonly 3: (reply: (import("@redis/client/dist/lib/RESP/types").BlobStringReply<string> | import("@redis/client/dist/lib/RESP/types").DoubleReply<number>)[]) => {
                suggestion: import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>;
                score: import("@redis/client/dist/lib/RESP/types").DoubleReply<number>;
            }[] | null;
        };
    };
    /**
     * Gets completion suggestions with their scores from a suggestion dictionary.
     * @param args - Same parameters as FT.SUGGET:
     *   - parser: The command parser
     *   - key: The suggestion dictionary key
     *   - prefix: The prefix to get completion suggestions for
     *   - options: Optional parameters for fuzzy matching and max results
     */
    sugGetWithScores: {
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, key: import("@redis/client").RedisArgument, prefix: import("@redis/client").RedisArgument, options?: import("./SUGGET").FtSugGetOptions | undefined) => void;
        readonly transformReply: {
            readonly 2: (reply: import("@redis/client/dist/lib/RESP/types").NullReply | import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>[], preserve?: unknown, typeMapping?: import("@redis/client").TypeMapping | undefined) => {
                suggestion: import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>;
                score: import("@redis/client/dist/lib/RESP/types").DoubleReply<number>;
            }[] | null;
            readonly 3: (reply: (import("@redis/client/dist/lib/RESP/types").BlobStringReply<string> | import("@redis/client/dist/lib/RESP/types").DoubleReply<number>)[]) => {
                suggestion: import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>;
                score: import("@redis/client/dist/lib/RESP/types").DoubleReply<number>;
            }[] | null;
        };
    };
    /**
     * Gets completion suggestions for a prefix from a suggestion dictionary.
     * @param key - The suggestion dictionary key
     * @param prefix - The prefix to get completion suggestions for
     * @param options - Optional parameters:
     *   - FUZZY: Enable fuzzy prefix matching
     *   - MAX: Maximum number of results to return
     */
    SUGGET: {
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, key: import("@redis/client").RedisArgument, prefix: import("@redis/client").RedisArgument, options?: import("./SUGGET").FtSugGetOptions | undefined) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>> | import("@redis/client/dist/lib/RESP/types").NullReply;
    };
    /**
     * Gets completion suggestions for a prefix from a suggestion dictionary.
     * @param key - The suggestion dictionary key
     * @param prefix - The prefix to get completion suggestions for
     * @param options - Optional parameters:
     *   - FUZZY: Enable fuzzy prefix matching
     *   - MAX: Maximum number of results to return
     */
    sugGet: {
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, key: import("@redis/client").RedisArgument, prefix: import("@redis/client").RedisArgument, options?: import("./SUGGET").FtSugGetOptions | undefined) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>> | import("@redis/client/dist/lib/RESP/types").NullReply;
    };
    /**
     * Gets the size of a suggestion dictionary.
     * @param key - The suggestion dictionary key
     */
    SUGLEN: {
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, key: import("@redis/client").RedisArgument) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").NumberReply<number>;
    };
    /**
     * Gets the size of a suggestion dictionary.
     * @param key - The suggestion dictionary key
     */
    sugLen: {
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, key: import("@redis/client").RedisArgument) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").NumberReply<number>;
    };
    /**
     * Dumps the contents of a synonym group.
     * @param index - Name of the index that contains the synonym group
     */
    SYNDUMP: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument) => void;
        readonly transformReply: {
            readonly 2: (reply: (import("@redis/client/dist/lib/RESP/types").BlobStringReply<string> | import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>)[]) => Record<string, import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>>;
            readonly 3: () => import("@redis/client/dist/lib/RESP/types").MapReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>, import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>>;
        };
    };
    /**
     * Dumps the contents of a synonym group.
     * @param index - Name of the index that contains the synonym group
     */
    synDump: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument) => void;
        readonly transformReply: {
            readonly 2: (reply: (import("@redis/client/dist/lib/RESP/types").BlobStringReply<string> | import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>)[]) => Record<string, import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>>;
            readonly 3: () => import("@redis/client/dist/lib/RESP/types").MapReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>, import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>>;
        };
    };
    /**
     * Updates a synonym group with new terms.
     * @param index - Name of the index that contains the synonym group
     * @param groupId - ID of the synonym group to update
     * @param terms - One or more synonym terms to add to the group
     * @param options - Optional parameters:
     *   - SKIPINITIALSCAN: Skip the initial scan for existing documents
     */
    SYNUPDATE: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, groupId: import("@redis/client").RedisArgument, terms: import("@redis/client/dist/lib/commands/generic-transformers").RedisVariadicArgument, options?: import("./SYNUPDATE").FtSynUpdateOptions | undefined) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").SimpleStringReply<"OK">;
    };
    /**
     * Updates a synonym group with new terms.
     * @param index - Name of the index that contains the synonym group
     * @param groupId - ID of the synonym group to update
     * @param terms - One or more synonym terms to add to the group
     * @param options - Optional parameters:
     *   - SKIPINITIALSCAN: Skip the initial scan for existing documents
     */
    synUpdate: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, groupId: import("@redis/client").RedisArgument, terms: import("@redis/client/dist/lib/commands/generic-transformers").RedisVariadicArgument, options?: import("./SYNUPDATE").FtSynUpdateOptions | undefined) => void;
        readonly transformReply: () => import("@redis/client/dist/lib/RESP/types").SimpleStringReply<"OK">;
    };
    /**
     * Returns the distinct values in a TAG field.
     * @param index - Name of the index
     * @param fieldName - Name of the TAG field to get values from
     */
    TAGVALS: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, fieldName: import("@redis/client").RedisArgument) => void;
        readonly transformReply: {
            readonly 2: () => import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>;
            readonly 3: () => import("@redis/client/dist/lib/RESP/types").SetReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>;
        };
    };
    /**
     * Returns the distinct values in a TAG field.
     * @param index - Name of the index
     * @param fieldName - Name of the TAG field to get values from
     */
    tagVals: {
        readonly NOT_KEYED_COMMAND: true;
        readonly IS_READ_ONLY: true;
        readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, fieldName: import("@redis/client").RedisArgument) => void;
        readonly transformReply: {
            readonly 2: () => import("@redis/client/dist/lib/RESP/types").ArrayReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>;
            readonly 3: () => import("@redis/client/dist/lib/RESP/types").SetReply<import("@redis/client/dist/lib/RESP/types").BlobStringReply<string>>;
        };
    };
};
export default _default;
//# sourceMappingURL=index.d.ts.map