export type DecisionChannelConfig = { schema: "pi-workflows.channels.v1"; audiences: Record; telegramProfiles?: Record; }; export type DecisionCredentialConfig = { schema: "pi-workflows.credentials.v1"; telegram: Record; }; export type LoadedDecisionChannelConfig = { channels: DecisionChannelConfig; credentials: Record; configDir: string; }; export type TelegramFetch = (input: string, init?: RequestInit) => Promise<{ ok: boolean; status: number; json(): Promise; }>; export declare function decisionConfigDir(env?: NodeJS.ProcessEnv): string; export declare function audienceChannels(config: DecisionChannelConfig | null, audience: string): string[]; export declare function loadDecisionChannelConfig(configDir?: string): Promise; export declare function verifyTelegramTokenFile(tokenFile: string, fetchFn?: TelegramFetch, apiBase?: string): Promise; export declare function writeDecisionChannelProfile(options: { configDir?: string; audience: string; profile: string; credential: string; tokenFile: string; allowedUserIds: string[]; allowedChatIds: string[]; }): Promise; export declare function parseChannelConfig(value: unknown): DecisionChannelConfig; export declare function parseCredentialConfig(value: unknown): DecisionCredentialConfig;