import type { OpenClawConfig } from "../../config/types.js"; import type { DirectoryConfigParams } from "./directory-types.js"; import type { ChannelDirectoryEntry } from "./types.public.js"; export declare function applyDirectoryQueryAndLimit(ids: string[], params: { query?: string | null; limit?: number | null; }): string[]; export declare function toDirectoryEntries(kind: "user" | "group", ids: string[]): ChannelDirectoryEntry[]; export declare function collectNormalizedDirectoryIds(params: { sources: Iterable[]; normalizeId: (entry: string) => string | null | undefined; }): string[]; export declare function listDirectoryEntriesFromSources(params: { kind: "user" | "group"; sources: Iterable[]; query?: string | null; limit?: number | null; normalizeId: (entry: string) => string | null | undefined; }): ChannelDirectoryEntry[]; export declare function listInspectedDirectoryEntriesFromSources(params: DirectoryConfigParams & { kind: "user" | "group"; inspectAccount: (cfg: OpenClawConfig, accountId?: string | null) => InspectedAccount | null | undefined; resolveSources: (account: InspectedAccount) => Iterable[]; normalizeId: (entry: string) => string | null | undefined; }): ChannelDirectoryEntry[]; export declare function createInspectedDirectoryEntriesLister(params: { kind: "user" | "group"; inspectAccount: (cfg: OpenClawConfig, accountId?: string | null) => InspectedAccount | null | undefined; resolveSources: (account: InspectedAccount) => Iterable[]; normalizeId: (entry: string) => string | null | undefined; }): (configParams: DirectoryConfigParams) => Promise; export declare function listResolvedDirectoryEntriesFromSources(params: DirectoryConfigParams & { kind: "user" | "group"; resolveAccount: (cfg: OpenClawConfig, accountId?: string | null) => ResolvedAccount; resolveSources: (account: ResolvedAccount) => Iterable[]; normalizeId: (entry: string) => string | null | undefined; }): ChannelDirectoryEntry[]; export declare function createResolvedDirectoryEntriesLister(params: { kind: "user" | "group"; resolveAccount: (cfg: OpenClawConfig, accountId?: string | null) => ResolvedAccount; resolveSources: (account: ResolvedAccount) => Iterable[]; normalizeId: (entry: string) => string | null | undefined; }): (configParams: DirectoryConfigParams) => Promise; export declare function listDirectoryUserEntriesFromAllowFrom(params: { allowFrom?: readonly unknown[]; query?: string | null; limit?: number | null; normalizeId?: (entry: string) => string | null | undefined; }): ChannelDirectoryEntry[]; export declare function listDirectoryUserEntriesFromAllowFromAndMapKeys(params: { allowFrom?: readonly unknown[]; map?: Record; query?: string | null; limit?: number | null; normalizeAllowFromId?: (entry: string) => string | null | undefined; normalizeMapKeyId?: (entry: string) => string | null | undefined; }): ChannelDirectoryEntry[]; export declare function listDirectoryGroupEntriesFromMapKeys(params: { groups?: Record; query?: string | null; limit?: number | null; normalizeId?: (entry: string) => string | null | undefined; }): ChannelDirectoryEntry[]; export declare function listDirectoryGroupEntriesFromMapKeysAndAllowFrom(params: { groups?: Record; allowFrom?: readonly unknown[]; query?: string | null; limit?: number | null; normalizeMapKeyId?: (entry: string) => string | null | undefined; normalizeAllowFromId?: (entry: string) => string | null | undefined; }): ChannelDirectoryEntry[]; export declare function listResolvedDirectoryUserEntriesFromAllowFrom(params: DirectoryConfigParams & { resolveAccount: (cfg: OpenClawConfig, accountId?: string | null) => ResolvedAccount; resolveAllowFrom: (account: ResolvedAccount) => readonly unknown[] | undefined; normalizeId?: (entry: string) => string | null | undefined; }): ChannelDirectoryEntry[]; export declare function listResolvedDirectoryGroupEntriesFromMapKeys(params: DirectoryConfigParams & { resolveAccount: (cfg: OpenClawConfig, accountId?: string | null) => ResolvedAccount; resolveGroups: (account: ResolvedAccount) => Record | undefined; normalizeId?: (entry: string) => string | null | undefined; }): ChannelDirectoryEntry[];