/**
 * @type { Environment }
 * @description Available environments for the Blaze SDK
 */
export type Environment = 'beta' | 'release' | 'smbBeta' | 'smbRelease';
export declare function decodeEnvironment(rawInput: unknown): Environment | null;
/**
 * @type { SDKPayload }
 */
export type SDKPayload = {
    /**
     * @description Unique request identifier
     * @type { string }
     * @memberof SDKPayload
     */
    requestId: string;
    /**
     * @description Service identifier
     * @type { string }
     * @memberof SDKPayload
     */
    service: string;
    /**
     * @description Environment
     * @type { Environment }
     * @memberof SDKPayload
     */
    environment: Environment | null;
    /**
     * @description Flexible payload for any SDK operation
     * @type { SDKPayloadPayload }
     * @memberof SDKPayload
     */
    payload: SDKPayloadPayload;
};
export declare function decodeSDKPayload(rawInput: unknown): SDKPayload | null;
/**
 * @type { SDKPayloadPayload }
 * @description Flexible payload for any SDK operation
 */
export type SDKPayloadPayload = Record<string, unknown>;
export declare function decodeSDKPayloadPayload(rawInput: unknown): SDKPayloadPayload | null;
/**
 * @type { EventName }
 * @description SDK event lifecycle stages
 */
export type EventName = 'initiate' | 'process' | 'terminate';
export declare function decodeEventName(rawInput: unknown): EventName | null;
/**
 * @type { SDKResponse }
 */
export type SDKResponse = {
    /**
     * @description Request identifier
     * @type { string }
     * @memberof SDKResponse
     */
    requestId: string;
    /**
     * @description Service identifier
     * @type { string }
     * @memberof SDKResponse
     */
    service: string;
    /**
     * @description Response payload
     * @type { SDKResponsePayload }
     * @memberof SDKResponse
     */
    payload: SDKResponsePayload;
};
export declare function decodeSDKResponse(rawInput: unknown): SDKResponse | null;
/**
 * @type { SDKResponsePayload }
 * @description Response payload
 */
export type SDKResponsePayload = Record<string, unknown>;
export declare function decodeSDKResponsePayload(rawInput: unknown): SDKResponsePayload | null;
