stream-chat
Version:
JS SDK for the Stream Chat API
25 lines (24 loc) • 1.43 kB
TypeScript
import { BaseSearchSource } from './BaseSearchSource';
import { FilterBuilder, type FilterBuilderOptions } from '../pagination';
import type { Channel } from '../channel';
import type { ChannelMemberResponse, MemberFilters, MemberSort, QueryMembersOptions } from '../types';
import type { SearchSourceOptions } from './types';
type CustomContext = Record<string, unknown>;
export type ChannelMemberSearchSourceFilterBuilderContext<C extends CustomContext = CustomContext> = {
searchQuery?: string;
} & C;
export declare class ChannelMemberSearchSource<TFilterContext extends CustomContext = CustomContext> extends BaseSearchSource<ChannelMemberResponse> {
readonly type = "members";
channel: Channel;
filters: MemberFilters | undefined;
sort: MemberSort | undefined;
searchOptions: Omit<QueryMembersOptions, 'limit' | 'offset'> | undefined;
filterBuilder: FilterBuilder<MemberFilters, ChannelMemberSearchSourceFilterBuilderContext<TFilterContext>>;
constructor(channel: Channel, options?: SearchSourceOptions, filterBuilderOptions?: FilterBuilderOptions<MemberFilters, ChannelMemberSearchSourceFilterBuilderContext<TFilterContext>>);
canExecuteQuery: (newSearchString?: string) => boolean;
protected query(searchQuery: string): Promise<{
items: ChannelMemberResponse[];
}>;
protected filterQueryResults(items: ChannelMemberResponse[]): ChannelMemberResponse[];
}
export {};