{"version":3,"file":"types.cjs","names":["z"],"sources":["../src/types.ts"],"sourcesContent":["import type { BaseCheckpointSaver } from \"@langchain/langgraph-checkpoint\";\nimport { z } from \"zod/v3\";\n\nexport interface CheckpointerTestInitializer<\n  CheckpointerT extends BaseCheckpointSaver,\n> {\n  /**\n   * The name of the checkpointer being tested. This will be used to identify the checkpointer in test output.\n   */\n  checkpointerName: string;\n\n  /**\n   * Called once before any tests are run. Use this to perform any setup that your checkpoint checkpointer may require, like\n   * starting docker containers, etc.\n   */\n  beforeAll?(): void | Promise<void>;\n\n  /**\n   * Optional timeout for beforeAll. Useful for test setups that might take a while to complete, e.g. due to needing to\n   * pull a docker container.\n   *\n   * @default 10000\n   */\n  beforeAllTimeout?: number;\n\n  /**\n   * Called once after all tests are run. Use this to perform any infrastructure cleanup that your checkpointer may\n   * require, like tearing down docker containers, etc.\n   */\n  afterAll?(): void | Promise<void>;\n\n  /**\n   * Called before each set of validations is run. The checkpointer returned will be used during test execution.\n   *\n   * @returns A new checkpointer, or promise that resolves to a new checkpointer.\n   */\n  createCheckpointer(): CheckpointerT | Promise<CheckpointerT>;\n\n  /**\n   * Called after each set of validations is run. Use this to clean up any resources that your checkpointer may\n   * have been using. This should include cleaning up any state that the checkpointer wrote during the tests that just ran.\n   *\n   * @param checkpointer The @see BaseCheckpointSaver that was used during the test.\n   */\n  destroyCheckpointer?(checkpointer: CheckpointerT): void | Promise<void>;\n}\n\nexport const checkpointerTestInitializerSchema = z.object({\n  checkpointerName: z.string(),\n  beforeAll: z\n    .function()\n    .returns(z.void().or(z.promise(z.void())))\n    .optional(),\n  beforeAllTimeout: z.number().default(10000).optional(),\n  afterAll: z\n    .function()\n    .returns(z.void().or(z.promise(z.void())))\n    .optional(),\n  createCheckpointer: z\n    .function()\n    .returns(\n      z\n        .custom<BaseCheckpointSaver>()\n        .or(z.promise(z.custom<BaseCheckpointSaver>()))\n    ),\n  destroyCheckpointer: z\n    .function()\n    .args(z.custom<BaseCheckpointSaver>())\n    .returns(z.void().or(z.promise(z.void())))\n    .optional(),\n});\n\nexport const testTypeFilters = [\n  \"getTuple\",\n  \"list\",\n  \"put\",\n  \"putWrites\",\n  \"deleteThread\",\n] as const;\n\nexport type TestTypeFilter = (typeof testTypeFilters)[number];\n\nexport function isTestTypeFilter(value: string): value is TestTypeFilter {\n  return testTypeFilters.includes(value as TestTypeFilter);\n}\n\nexport function isTestTypeFilterArray(\n  value: string[]\n): value is TestTypeFilter[] {\n  return value.every(isTestTypeFilter);\n}\n"],"mappings":";;AA+CiDA,OAAAA,EAAE,OAAO;CACxD,kBAAkBA,OAAAA,EAAE,QAAQ;CAC5B,WAAWA,OAAAA,EACR,UAAU,CACV,QAAQA,OAAAA,EAAE,MAAM,CAAC,GAAGA,OAAAA,EAAE,QAAQA,OAAAA,EAAE,MAAM,CAAC,CAAC,CAAC,CACzC,UAAU;CACb,kBAAkBA,OAAAA,EAAE,QAAQ,CAAC,QAAQ,IAAM,CAAC,UAAU;CACtD,UAAUA,OAAAA,EACP,UAAU,CACV,QAAQA,OAAAA,EAAE,MAAM,CAAC,GAAGA,OAAAA,EAAE,QAAQA,OAAAA,EAAE,MAAM,CAAC,CAAC,CAAC,CACzC,UAAU;CACb,oBAAoBA,OAAAA,EACjB,UAAU,CACV,QACCA,OAAAA,EACG,QAA6B,CAC7B,GAAGA,OAAAA,EAAE,QAAQA,OAAAA,EAAE,QAA6B,CAAC,CAAC,CAClD;CACH,qBAAqBA,OAAAA,EAClB,UAAU,CACV,KAAKA,OAAAA,EAAE,QAA6B,CAAC,CACrC,QAAQA,OAAAA,EAAE,MAAM,CAAC,GAAGA,OAAAA,EAAE,QAAQA,OAAAA,EAAE,MAAM,CAAC,CAAC,CAAC,CACzC,UAAU;CACd,CAAC;AAEF,MAAa,kBAAkB;CAC7B;CACA;CACA;CACA;CACA;CACD;AAID,SAAgB,iBAAiB,OAAwC;AACvE,QAAO,gBAAgB,SAAS,MAAwB;;AAG1D,SAAgB,sBACd,OAC2B;AAC3B,QAAO,MAAM,MAAM,iBAAiB"}