export type OffReason = 'no-key' | 'do-not-track' | 'ci' | 'disabled';
/** The `DO_NOT_TRACK` convention: set and not `0`/empty means "off". */
export declare function doNotTrack(env?: NodeJS.ProcessEnv): boolean;
/**
 * CI detection. `CI` covers essentially every provider; the rest are the ones
 * that historically did not set it. Deliberately generous — a false positive
 * costs one uncounted user, a false negative pollutes the dataset.
 */
export declare function inCi(env?: NodeJS.ProcessEnv): boolean;
/** Null when telemetry may run, otherwise the first gate that closed. */
export declare function offReason(home?: string, env?: NodeJS.ProcessEnv): OffReason | null;
export declare function telemetryOn(home?: string, env?: NodeJS.ProcessEnv): boolean;
/** One line for `graft telemetry status`, naming the gate that is closed so a
 *  user who thinks they disabled it can see which switch actually took. */
export declare function explainOff(reason: OffReason): string;
//# sourceMappingURL=gate.d.ts.map