fathom-typescript
Version:
Fathom's official TypeScript SDK.
33 lines (26 loc) • 720 B
text/typescript
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
import * as z from "zod/v3";
export const blobLikeSchema: z.ZodType<Blob, z.ZodTypeDef, Blob> = z.custom<
Blob
>(isBlobLike, {
message: "expected a Blob, File or Blob-like object",
fatal: true,
});
export function isBlobLike(val: unknown): val is Blob {
if (val instanceof Blob) {
return true;
}
if (typeof val !== "object" || val == null || !(Symbol.toStringTag in val)) {
return false;
}
const name = val[Symbol.toStringTag];
if (typeof name !== "string") {
return false;
}
if (name !== "Blob" && name !== "File") {
return false;
}
return "stream" in val && typeof val.stream === "function";
}