import type { HistoryPolicy, NormalizedHistoryPolicy, NormalizedPayloadSizePolicy, NormalizedRetentionPolicy, PayloadSizePolicy, RetentionPolicy, WorkflowState, WorkflowStatus, WorkflowTimelineEntry } from '../types.ts'; import type { WorkflowVersionTuple } from '../workflow-version-tuple.ts'; export declare function isSanitizedSearchAttributeValue(value: unknown): value is import('../types.ts').SearchAttributeValue; export declare function isWorkflowVersionTuple(value: unknown): value is WorkflowVersionTuple; export declare function isFiniteNumber(value: unknown): value is number; export declare function isTimelineStep(value: unknown): value is number; export declare function isWorkflowTimelineEntry(value: unknown): value is WorkflowTimelineEntry; export declare function normalizeBulkFilterNumber(value: unknown, fieldName: 'limit' | 'offset'): number | undefined; export declare function isValidDecodedTags(value: unknown): value is string[] | undefined; export declare function decodeWorkflowState(bytes: Uint8Array): WorkflowState; export declare function normalizeRetentionDuration(value: import('../types.ts').Duration | undefined, fieldName: string): number | undefined; /** * Validate and normalise a {@link HistoryPolicy} into a * {@link NormalizedHistoryPolicy}. Mirrors {@link normalizeRetentionPolicy}'s * throw-on-bad-input contract. * * Both `maxEvents` and `retentionWindow` share the same validation mechanics * (they differ in semantics — see {@link HistoryPolicy}): * - omitted policy, or omitted/`undefined` field → `null` (disabled). * - `0` → `null` (disabled; mirrors `checkpointHistory: 0` meaning "off"). * - any other value that is not a positive safe integer (negatives, non-integers, * non-finite values, unsafe integers, wrong types) → throws. */ export declare function normalizeHistoryPolicy(policy: HistoryPolicy | undefined, context: string): NormalizedHistoryPolicy; /** * Validate and normalise a {@link PayloadSizePolicy} into a * {@link NormalizedPayloadSizePolicy}. Mirrors {@link normalizeHistoryPolicy}'s * throw-on-bad-input contract. * * Contract for `maxBytes`: * - omitted policy, or omitted/`undefined`/`null` field → `{ maxBytes: null }` (disabled). * - `0` → `{ maxBytes: null }` (disabled). * - any other value that is not a positive safe integer (negatives, non-integers, * non-finite values, unsafe integers, wrong types) → throws. */ export declare function normalizePayloadSizePolicy(policy: PayloadSizePolicy | undefined, context: string): NormalizedPayloadSizePolicy; export declare function normalizeRetentionPolicy(policy: RetentionPolicy | undefined, context: string): NormalizedRetentionPolicy | null; export declare function resolveRetentionForStatus(policy: NormalizedRetentionPolicy | null | undefined, status: WorkflowStatus): number | undefined; export declare function isTerminalWorkflowStatus(status: WorkflowStatus): boolean; export declare function isPlainObjectRecord(value: unknown): value is Record;