type AccountConfigWithWrites = { configWrites?: boolean; }; type ChannelConfigWithAccounts = { configWrites?: boolean; accounts?: Record; }; type ConfigWritePolicyConfig = { channels?: Record; }; export type ConfigWriteScopeLike = { channelId?: TChannelId | null; accountId?: string | null; }; export type ConfigWriteTargetLike = { kind: "global"; } | { kind: "channel"; scope: { channelId: TChannelId; }; } | { kind: "account"; scope: { channelId: TChannelId; accountId: string; }; } | { kind: "ambiguous"; scopes: ConfigWriteScopeLike[]; }; export type ConfigWriteAuthorizationResultLike = { allowed: true; } | { allowed: false; reason: "ambiguous-target" | "origin-disabled" | "target-disabled"; blockedScope?: { kind: "origin" | "target"; scope: ConfigWriteScopeLike; }; }; export declare function resolveChannelConfigWritesShared(params: { cfg: ConfigWritePolicyConfig; channelId?: string | null; accountId?: string | null; }): boolean; export declare function authorizeConfigWriteShared(params: { cfg: ConfigWritePolicyConfig; origin?: ConfigWriteScopeLike; target?: ConfigWriteTargetLike; allowBypass?: boolean; }): ConfigWriteAuthorizationResultLike; export declare function resolveExplicitConfigWriteTargetShared(scope: ConfigWriteScopeLike): ConfigWriteTargetLike; export declare function resolveConfigWriteTargetFromPathShared(params: { path: string[]; normalizeChannelId: (raw: string) => TChannelId | null | undefined; }): ConfigWriteTargetLike; export declare function canBypassConfigWritePolicyShared(params: { channel?: string | null; gatewayClientScopes?: string[] | null; isInternalMessageChannel: (channel?: string | null) => boolean; }): boolean; export declare function formatConfigWriteDeniedMessageShared(params: { result: Exclude, { allowed: true; }>; fallbackChannelId?: TChannelId | null; }): string; export {};