import { type APIClient } from '../api.ts';
import { type StreamNamespaceEntry } from './namespaces.ts';
export interface StreamSearchOptions {
    keyword: string;
    namespace?: string;
    limit?: number;
    offset?: number;
}
export interface StreamSearchResult {
    entries: StreamNamespaceEntry[];
    total: number;
}
/**
 * Search streams by keyword across name, metadata, and headers.
 * Optionally filter by a specific namespace.
 *
 * @param client - The API client configured for Pulse
 * @param options - Search keyword, optional namespace filter, and pagination
 * @returns Matching stream entries with total count
 *
 * @example
 * const result = await streamSearch(client, { keyword: 'agent-logs' });
 * console.log(`Found ${result.total} matching streams`);
 *
 * @example
 * // Search within a specific namespace
 * const result = await streamSearch(client, {
 *   keyword: 'error',
 *   namespace: 'agent-logs',
 *   limit: 50,
 * });
 */
export declare function streamSearch(client: APIClient, options: StreamSearchOptions): Promise<StreamSearchResult>;
//# sourceMappingURL=search.d.ts.map