/** * Channel config adapter factories. */ import type { Config } from '../config/schema.js'; import type { ChannelConfigAdapter } from './plugin-types.js'; export declare function createTopLevelChannelConfigAdapter(params: { sectionKey: string; resolveAccount: (cfg: Config) => ResolvedAccount; deleteMode?: 'remove-section' | 'clear-fields'; resolveAllowFrom?: (account: ResolvedAccount) => Array | undefined; formatAllowFrom?: (allowFrom: Array) => string[]; }): ChannelConfigAdapter; export declare function createScopedChannelConfigAdapter(params: { sectionKey: string; listAccountIds: (cfg: Config) => string[]; resolveAccount: (cfg: Config, accountId?: string | null) => ResolvedAccount; defaultAccountId: (cfg: Config) => string; resolveAllowFrom: (account: ResolvedAccount) => Array | undefined; formatAllowFrom: (allowFrom: Array) => string[]; }): ChannelConfigAdapter; export declare function createHybridChannelConfigAdapter(params: { sectionKey: string; listAccountIds: (cfg: Config) => string[]; resolveAccount: (cfg: Config, accountId?: string | null) => ResolvedAccount; resolveAllowFrom?: (account: ResolvedAccount) => Array | undefined; formatAllowFrom?: (allowFrom: Array) => string[]; }): ChannelConfigAdapter;