export type ParsedSyncResponse = { /** Number of items the server reported as synced (0 when the shape drifted). */ synced: number; /** False when the body did not match the expected contract. */ valid: boolean; /** Server-advertised "current published version", when present and well-formed. */ cliLatest?: string; }; /** * Validate a `/api/sync` response body without throwing. A 200 response means * the items were already persisted server-side, so a drifted shape must not * fail the sync — it is surfaced via `valid: false` and counted as 0 so the * caller can warn while still treating the push as accepted. */ export declare function parseSyncResponse(raw: unknown): ParsedSyncResponse; /** * Read the optional `cli.latest` advisory off any authenticated-endpoint * response body. Shared with the guide-bundle pull, which carries the same * hint so a sync with nothing to push still learns it without a second call * (`cli-self-update-plan.md` §6). Never throws: an absent or malformed `cli` * yields `undefined`, leaving the caller's own result untouched. */ export declare function extractCliLatest(raw: unknown): string | undefined; //# sourceMappingURL=sync-response.d.ts.map