import { APIResource } from "../../../core/resource.js";
import { APIPromise } from "../../../core/api-promise.js";
import { RequestOptions } from "../../../internal/request-options.js";
export declare class BaseSearch extends APIResource {
    static readonly _key: readonly ['cloudforceOne', 'threatSignals', 'search'];
    /**
     * Searches the account's Threat Signals articles using keyword and semantic
     * retrieval.
     *
     * @example
     * ```ts
     * const response =
     *   await client.cloudforceOne.threatSignals.search.search({
     *     account_id: 'account_id',
     *     query: 'x',
     *   });
     * ```
     */
    search(params: SearchSearchParams, options?: RequestOptions): APIPromise<SearchSearchResponse>;
}
export declare class Search extends BaseSearch {
}
export interface SearchSearchResponse {
    /**
     * Number of unique article candidates returned in this response. Equal to
     * results.length.
     */
    count: number;
    results: Array<SearchSearchResponse.Result>;
}
export declare namespace SearchSearchResponse {
    interface Result {
        article_id: string;
        dataset_id: string | null;
        event_id: string | null;
        feed_id: string;
        score: number;
        text: string;
    }
}
export interface SearchSearchParams {
    /**
     * Path param
     */
    account_id: string;
    /**
     * Query param
     */
    query: string;
    /**
     * Query param
     */
    feed_id?: string;
    /**
     * Query param
     */
    max_results?: '' | (string & {});
}
export declare namespace Search {
    export { type SearchSearchResponse as SearchSearchResponse, type SearchSearchParams as SearchSearchParams };
}
//# sourceMappingURL=search.d.ts.map