import type { OptionsSetChannel } from '../schemas/channel';
import type { Compatibility } from '../utils';
export type { OptionsSetChannel } from '../schemas/channel';
/**
 * Warn (and optionally throw) when a bundle's native packages don't match the
 * channel. `--accept-incompatible` continues after the warning so callers can
 * mark a handled mismatch (runtime plugin guards, etc.).
 */
export declare function rejectOrAcceptIncompatibleChannelBundle(params: {
    silent: boolean;
    acceptIncompatible?: boolean;
    incompatible: boolean;
    finalCompatibility: Compatibility[];
    heading: string;
    errorMessage: string;
}): void;
/**
 * A permission denial is a user outcome (CliUserError). Network failures and
 * other API errors stay plain errors so error tracking still captures them.
 */
export declare function throwChannelWriteError(error: Error, silent: boolean): Promise<never>;
export declare function setChannelInternal(channel: string, appId: string, options: OptionsSetChannel, silent?: boolean, showFrame?: boolean): Promise<boolean>;
export declare function setChannel(channel: string, appId: string, options: OptionsSetChannel): Promise<boolean>;
