@corsair-dev/amplitude 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/LICENSE +191 -0
  2. package/dist/client.d.ts +13 -0
  3. package/dist/client.d.ts.map +1 -0
  4. package/dist/endpoints/annotations.d.ts +4 -0
  5. package/dist/endpoints/annotations.d.ts.map +1 -0
  6. package/dist/endpoints/charts.d.ts +3 -0
  7. package/dist/endpoints/charts.d.ts.map +1 -0
  8. package/dist/endpoints/cohorts.d.ts +6 -0
  9. package/dist/endpoints/cohorts.d.ts.map +1 -0
  10. package/dist/endpoints/dashboards.d.ts +4 -0
  11. package/dist/endpoints/dashboards.d.ts.map +1 -0
  12. package/dist/endpoints/events.d.ts +6 -0
  13. package/dist/endpoints/events.d.ts.map +1 -0
  14. package/dist/endpoints/exports.d.ts +3 -0
  15. package/dist/endpoints/exports.d.ts.map +1 -0
  16. package/dist/endpoints/index.d.ts +295 -0
  17. package/dist/endpoints/index.d.ts.map +1 -0
  18. package/dist/endpoints/types.d.ts +2411 -0
  19. package/dist/endpoints/types.d.ts.map +1 -0
  20. package/dist/endpoints/users.d.ts +5 -0
  21. package/dist/endpoints/users.d.ts.map +1 -0
  22. package/dist/error-handlers.d.ts +40 -0
  23. package/dist/error-handlers.d.ts.map +1 -0
  24. package/dist/index.d.ts +1497 -0
  25. package/dist/index.d.ts.map +1 -0
  26. package/dist/index.js +1 -0
  27. package/dist/schema/database.d.ts +170 -0
  28. package/dist/schema/database.d.ts.map +1 -0
  29. package/dist/schema/index.d.ts +171 -0
  30. package/dist/schema/index.d.ts.map +1 -0
  31. package/dist/tsup.config.d.ts +3 -0
  32. package/dist/tsup.config.d.ts.map +1 -0
  33. package/dist/webhooks/annotations.d.ts +4 -0
  34. package/dist/webhooks/annotations.d.ts.map +1 -0
  35. package/dist/webhooks/cohorts.d.ts +3 -0
  36. package/dist/webhooks/cohorts.d.ts.map +1 -0
  37. package/dist/webhooks/events.d.ts +4 -0
  38. package/dist/webhooks/events.d.ts.map +1 -0
  39. package/dist/webhooks/experiments.d.ts +3 -0
  40. package/dist/webhooks/experiments.d.ts.map +1 -0
  41. package/dist/webhooks/index.d.ts +202 -0
  42. package/dist/webhooks/index.d.ts.map +1 -0
  43. package/dist/webhooks/monitors.d.ts +3 -0
  44. package/dist/webhooks/monitors.d.ts.map +1 -0
  45. package/dist/webhooks/types.d.ts +305 -0
  46. package/dist/webhooks/types.d.ts.map +1 -0
  47. package/package.json +40 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
package/dist/index.js ADDED
@@ -0,0 +1 @@
1
+ import{logEventFromContext as j}from"corsair/core";import{request as kt}from"corsair/http";var v=class extends Error{constructor(s,o){super(s);this.code=o;this.name="AmplitudeAPIError"}},g="https://api2.amplitude.com",Ct="https://amplitude.com";async function d(e,n,s={}){let{method:o="GET",body:a,query:p,baseUrl:b=Ct}=s,Et={BASE:b,VERSION:"1.0.0",WITH_CREDENTIALS:!1,CREDENTIALS:"omit",HEADERS:{"Content-Type":"application/json",Authorization:`Basic ${Buffer.from(n).toString("base64")}`}},_t={method:o,url:e,body:o==="POST"||o==="PUT"||o==="PATCH"?a:void 0,mediaType:"application/json; charset=utf-8",query:o==="GET"?p:void 0};try{return await kt(Et,_t)}catch(k){throw k instanceof Error?new v(k.message):new v("Unknown error")}}var B=async(e,n)=>{let s=await d("/api/2/annotations",e.key,{method:"GET",query:{app_id:n.app_id}});return await j(e,"amplitude.annotations.list",{...n},"completed"),s},M=async(e,n)=>{let s=await d("/api/2/annotations",e.key,{method:"POST",body:{date:n.date,label:n.label,details:n.details,app_id:n.app_id}});return await j(e,"amplitude.annotations.create",{...n},"completed"),s};import{logEventFromContext as xt}from"corsair/core";var O=async(e,n)=>{let s=await d(`/api/3/chart/${n.chart_id}`,e.key,{method:"GET"});return await xt(e,"amplitude.charts.get",{...n},"completed"),s};import{logEventFromContext as A}from"corsair/core";var W=async(e,n)=>{let s=await d("/api/3/cohorts",e.key,{method:"GET"});if(s.cohorts&&e.db.cohorts)try{for(let o of s.cohorts)o.id&&await e.db.cohorts.upsertByEntityId(o.id,{...o,description:o.description??void 0,size:o.size??void 0})}catch(o){console.warn("Failed to save cohorts to database:",o)}return await A(e,"amplitude.cohorts.list",{...n},"completed"),s},z=async(e,n)=>{let s=await d(`/api/3/cohorts/${n.cohort_id}`,e.key,{method:"GET"});if(s.cohort&&e.db.cohorts)try{let{description:o,...a}=s.cohort;await e.db.cohorts.upsertByEntityId(s.cohort.id,{...a,description:o??void 0})}catch(o){console.warn("Failed to save cohort to database:",o)}return await A(e,"amplitude.cohorts.get",{...n},"completed"),s},F=async(e,n)=>{let s=await d("/api/3/cohorts",e.key,{method:"POST",body:{name:n.name,app_id:n.app_id,id_type:n.id_type,ids:n.ids,owners:n.owners,description:n.description,published:n.published}});if(s.cohort&&e.db.cohorts)try{await e.db.cohorts.upsertByEntityId(s.cohort.id,{...s.cohort})}catch(o){console.warn("Failed to save cohort to database:",o)}return await A(e,"amplitude.cohorts.create",{...n},"completed"),s},q=async(e,n)=>{let s=await d(`/api/5/cohorts/request/${n.request_id}`,e.key,{method:"GET"});return await A(e,"amplitude.cohorts.getMembers",{...n},"completed"),s};import{logEventFromContext as H}from"corsair/core";var N=async(e,n)=>{let s=await d("/api/3/dashboards",e.key,{method:"GET"});return await H(e,"amplitude.dashboards.list",{...n},"completed"),s},$=async(e,n)=>{let s=await d(`/api/3/dashboards/${n.dashboard_id}`,e.key,{method:"GET"});return await H(e,"amplitude.dashboards.get",{...n},"completed"),s};import{logEventFromContext as E}from"corsair/core";var K=async(e,n)=>{let s=await d("/2/httpapi",e.key,{method:"POST",body:{api_key:n.api_key,events:n.events,options:n.options},baseUrl:g});if(e.db.events&&n.events.length>0)try{for(let o of n.events){let a=o.insert_id??[o.event_type,o.user_id??o.device_id??"",String(o.time??Date.now())].join(":");await e.db.events.upsertByEntityId(a,{...o,id:a,createdAt:o.time?new Date(o.time):new Date})}}catch(o){console.warn("Failed to save events to database:",o)}return await E(e,"amplitude.events.upload",{...n},"completed"),s},V=async(e,n)=>{let s=await d("/batch",e.key,{method:"POST",body:{api_key:n.api_key,events:n.events,options:n.options},baseUrl:g});if(e.db.events&&n.events.length>0)try{for(let o of n.events){let a=o.insert_id??[o.event_type,o.user_id??o.device_id??"",String(o.time??Date.now())].join(":");await e.db.events.upsertByEntityId(a,{...o,id:a,createdAt:o.time?new Date(o.time):new Date})}}catch(o){console.warn("Failed to save events to database:",o)}return await E(e,"amplitude.events.uploadBatch",{...n},"completed"),s},Y=async(e,n)=>{let s=await d("/identify",e.key,{method:"POST",body:{api_key:n.api_key,identification:n.identification},baseUrl:g});if(e.db.users&&n.identification.length>0)try{for(let o of n.identification){let a=o.user_id??o.device_id;a&&await e.db.users.upsertByEntityId(a,{id:a,user_id:o.user_id,user_properties:o.user_properties,createdAt:new Date})}}catch(o){console.warn("Failed to save users to database:",o)}return await E(e,"amplitude.events.identifyUser",{...n},"completed"),s},J=async(e,n)=>{let s=await d("/api/2/events/list",e.key,{method:"GET"});return await E(e,"amplitude.events.getList",{...n},"completed"),s};import{logEventFromContext as It}from"corsair/core";var Q=async(e,n)=>{let s=await d("/api/2/export",e.key,{method:"GET",query:{start:n.start,end:n.end}});return await It(e,"amplitude.exports.getData",{...n},"completed"),s};import{logEventFromContext as C}from"corsair/core";var X=async(e,n)=>{let s=await d("/api/2/usersearch",e.key,{method:"GET",query:{user:n.user,limit:n.limit,offset:n.offset}});if(s.matches&&e.db.users)try{for(let o of s.matches){let a=o.user_id??String(o.amplitude_id);await e.db.users.upsertByEntityId(a,{...o,id:a,canonical_amplitude_id:o.amplitude_id})}}catch(o){console.warn("Failed to save users to database:",o)}return await C(e,"amplitude.users.search",{...n},"completed"),s},Z=async(e,n)=>{let s=await d("/api/2/userprofile",e.key,{method:"GET",query:{user_id:n.user_id,amplitude_id:n.amplitude_id}});if(s.userData)try{let o=s.userData.user_id??(s.userData.amplitude_id?String(s.userData.amplitude_id):void 0);o&&e.db.users&&await e.db.users.upsertByEntityId(o,{...s.userData,id:o})}catch(o){console.warn("Failed to save user to database:",o)}return await C(e,"amplitude.users.getProfile",{...n},"completed"),s},tt=async(e,n)=>{let s=await d("/api/2/useractivity",e.key,{method:"GET",query:{user:n.user,limit:n.limit,offset:n.offset}});if(s.events&&e.db.events)try{for(let o of s.events){let a=[String(o.amplitude_id??n.user),o.event_time??"",o.event_type??""].join(":");await e.db.events.upsertByEntityId(a,{...o,id:a,event_type:o.event_type??"",createdAt:o.event_time?new Date(o.event_time):new Date})}}catch(o){console.warn("Failed to save activity events to database:",o)}return await C(e,"amplitude.users.getActivity",{...n},"completed"),s};import{z as t}from"zod";var et=t.object({event_type:t.string(),user_id:t.string().optional(),device_id:t.string().optional(),time:t.number().optional(),event_properties:t.record(t.string(),t.unknown()).optional(),user_properties:t.record(t.string(),t.unknown()).optional(),app_version:t.string().optional(),platform:t.string().optional(),os_name:t.string().optional(),os_version:t.string().optional(),device_brand:t.string().optional(),device_manufacturer:t.string().optional(),device_model:t.string().optional(),carrier:t.string().optional(),country:t.string().optional(),region:t.string().optional(),city:t.string().optional(),language:t.string().optional(),ip:t.string().optional(),insert_id:t.string().optional(),session_id:t.number().optional()}),Gt=t.object({api_key:t.string(),events:t.array(et),options:t.object({min_id_length:t.number().optional()}).optional()}),St=t.object({code:t.number(),events_ingested:t.number().optional(),payload_size_bytes:t.number().optional(),server_upload_time:t.number().optional()}),wt=t.object({api_key:t.string(),events:t.array(et),options:t.object({min_id_length:t.number().optional()}).optional()}),Rt=t.object({code:t.number(),events_ingested:t.number().optional(),payload_size_bytes:t.number().optional(),server_upload_time:t.number().optional()}),Ut=t.object({user_id:t.string().optional(),device_id:t.string().optional(),user_properties:t.record(t.string(),t.unknown())}),Lt=t.object({api_key:t.string(),identification:t.array(Ut)}),Pt=t.object({code:t.number(),error:t.string().optional()}),Dt=t.object({}),Tt=t.object({data:t.array(t.object({event_type:t.string().optional(),display_name:t.string().optional(),totals:t.number().optional(),totals_delta:t.number().optional(),hidden:t.boolean().optional(),deleted:t.boolean().optional(),non_active:t.boolean().optional()})).optional()}),jt=t.object({user:t.string(),limit:t.number().optional(),offset:t.number().optional()}),Bt=t.object({matches:t.array(t.object({amplitude_id:t.number(),user_id:t.string().optional(),last_seen:t.number().optional(),is_identified:t.boolean().optional(),country:t.string().optional(),city:t.string().optional(),platform:t.string().optional(),os:t.string().optional(),device:t.string().optional()})).optional(),next:t.string().optional()}),Mt=t.object({user_id:t.string().optional(),amplitude_id:t.number().optional()}),Ot=t.object({userData:t.object({user_id:t.string().optional(),amplitude_id:t.number().optional(),canonical_amplitude_id:t.number().optional(),merged_amplitude_ids:t.array(t.number()).optional(),is_identified:t.boolean().optional(),user_properties:t.record(t.string(),t.unknown()).optional(),country:t.string().optional(),region:t.string().optional(),city:t.string().optional(),language:t.string().optional(),platform:t.string().optional(),os:t.string().optional(),device:t.string().optional(),last_seen:t.number().optional()}).optional()}),Wt=t.object({user:t.number(),limit:t.number().optional(),offset:t.number().optional()}),zt=t.object({events:t.array(t.object({event_type:t.string().optional(),event_time:t.string().optional(),event_properties:t.record(t.string(),t.unknown()).optional(),session_id:t.number().optional(),amplitude_id:t.number().optional()})).optional(),userData:t.object({num_events:t.number().optional(),num_sessions:t.number().optional(),first_used:t.string().optional(),last_used:t.string().optional(),canonical_amplitude_id:t.number().optional()}).optional()}),Ft=t.object({}),qt=t.object({cohorts:t.array(t.object({id:t.string(),name:t.string(),owners:t.array(t.string()).optional(),description:t.string().nullable().optional(),published:t.boolean().optional(),archived:t.boolean().optional(),app_id:t.number().optional(),size:t.number().nullable().optional(),last_computed:t.number().optional(),last_modified:t.number().optional(),is_predefined:t.boolean().optional(),type:t.string().optional()})).optional()}),Ht=t.object({cohort_id:t.string()}),Nt=t.object({cohort:t.object({id:t.string(),name:t.string(),owners:t.array(t.string()).optional(),description:t.string().nullable().optional(),published:t.boolean().optional(),archived:t.boolean().optional(),app_id:t.number().optional(),size:t.number().optional(),last_computed:t.number().optional(),last_modified:t.number().optional(),is_predefined:t.boolean().optional(),type:t.string().optional()}).optional()}),$t=t.object({name:t.string(),app_id:t.number(),id_type:t.enum(["BY_AMP_ID","BY_USER_ID","BY_DEVICE_ID"]),ids:t.array(t.string()),owners:t.array(t.string()).optional(),description:t.string().optional(),published:t.boolean().optional()}),Kt=t.object({cohort:t.object({id:t.string(),name:t.string(),size:t.number().optional(),last_computed:t.number().optional()}).optional()}),Vt=t.object({request_id:t.string()}),Yt=t.object({status:t.string().optional(),zip_url:t.string().optional()}),Jt=t.object({chart_id:t.string()}),Qt=t.object({data:t.object({series:t.array(t.object({type:t.string().optional(),values:t.array(t.unknown()).optional()})).optional(),xValues:t.array(t.string()).optional()}).optional(),seriesLabels:t.array(t.string()).optional(),title:t.string().optional()}),Xt=t.object({}),Zt=t.object({dashboards:t.array(t.object({id:t.number(),name:t.string(),description:t.string().optional(),created:t.string().optional(),lastUpdated:t.string().optional(),createdBy:t.string().optional(),published:t.boolean().optional()})).optional()}),te=t.object({dashboard_id:t.number()}),ee=t.object({dashboard:t.object({id:t.number(),name:t.string(),description:t.string().optional(),created:t.string().optional(),lastUpdated:t.string().optional(),createdBy:t.string().optional(),published:t.boolean().optional(),charts:t.array(t.object({id:t.string(),name:t.string().optional()})).optional()}).optional()}),oe=t.object({app_id:t.number().optional()}),ne=t.object({data:t.array(t.object({id:t.number(),date:t.string(),label:t.string(),details:t.string().optional(),app_id:t.number().optional(),source:t.string().optional()})).optional()}),se=t.object({date:t.string(),label:t.string(),details:t.string().optional(),app_id:t.number().optional()}),ie=t.object({data:t.object({id:t.number(),date:t.string(),label:t.string(),details:t.string().optional(),app_id:t.number().optional()}).optional()}),re=t.object({start:t.string(),end:t.string()}),ae=t.object({status:t.string().optional(),url:t.string().optional()}),u={eventsUpload:Gt,eventsUploadBatch:wt,eventsIdentifyUser:Lt,eventsGetList:Dt,usersSearch:jt,usersGetProfile:Mt,usersGetActivity:Wt,cohortsList:Ft,cohortsGet:Ht,cohortsCreate:$t,cohortsGetMembers:Vt,chartsGet:Jt,dashboardsList:Xt,dashboardsGet:te,annotationsList:oe,annotationsCreate:se,exportsGetData:re},l={eventsUpload:St,eventsUploadBatch:Rt,eventsIdentifyUser:Pt,eventsGetList:Tt,usersSearch:Bt,usersGetProfile:Ot,usersGetActivity:zt,cohortsList:qt,cohortsGet:Nt,cohortsCreate:Kt,cohortsGetMembers:Yt,chartsGet:Qt,dashboardsList:Zt,dashboardsGet:ee,annotationsList:ne,annotationsCreate:ie,exportsGetData:ae};var h={upload:K,uploadBatch:V,identifyUser:Y,getList:J},_={search:X,getProfile:Z,getActivity:tt},y={list:W,get:z,create:F,getMembers:q},ot={get:O},x={list:N,get:$},I={list:B,create:M},nt={getData:Q};import{ApiError as f}from"corsair/http";var st={RATE_LIMIT_ERROR:{match:(e,n)=>{if(e instanceof f&&e.status===429)return!0;let s=e.message.toLowerCase();return s.includes("rate_limited")||s.includes("ratelimited")||e.message.includes("429")},handler:async(e,n)=>{let s;return e instanceof f&&e.retryAfter!==void 0&&(s=e.retryAfter),{maxRetries:5,headersRetryAfterMs:s}}},AUTH_ERROR:{match:(e,n)=>{if(e instanceof f&&e.status===401)return!0;let s=e.message.toLowerCase();return s.includes("invalid_api_key")||s.includes("unauthorized")||s.includes("authentication failed")},handler:async(e,n)=>(console.log(`[AMPLITUDE:${n.operation}] Authentication failed - check your API key`),{maxRetries:0})},PERMISSION_ERROR:{match:(e,n)=>{if(e instanceof f&&e.status===403)return!0;let s=e.message.toLowerCase();return s.includes("permission_denied")||s.includes("forbidden")||s.includes("access_denied")||s.includes("insufficient_permissions")},handler:async(e,n)=>(console.warn(`[AMPLITUDE:${n.operation}] Permission denied: ${e.message}`),{maxRetries:0})},NETWORK_ERROR:{match:(e,n)=>{let s=e.message.toLowerCase();return s.includes("network")||s.includes("connection")||s.includes("econnrefused")||s.includes("enotfound")||s.includes("etimedout")||s.includes("fetch failed")||s.includes("network error")},handler:async(e,n)=>(console.warn(`[AMPLITUDE:${n.operation}] Network error: ${e.message}`),{maxRetries:3})},NOT_FOUND_ERROR:{match:(e,n)=>{if(e instanceof f&&e.status===404)return!0;let s=e.message.toLowerCase();return s.includes("not_found")||s.includes("cohort_not_found")||s.includes("chart_not_found")||s.includes("dashboard_not_found")},handler:async(e,n)=>(console.warn(`[AMPLITUDE:${n.operation}] Resource not found: ${e.message}`),{maxRetries:0})},DEFAULT:{match:(e,n)=>!0,handler:async(e,n)=>(console.error(`[AMPLITUDE:${n.operation}] Unhandled error: ${e.message}`),{maxRetries:0})}};import{z as r}from"zod";var it=r.object({id:r.string(),event_type:r.string(),user_id:r.string().optional(),device_id:r.string().optional(),time:r.number().optional(),event_properties:r.record(r.string(),r.unknown()).optional(),user_properties:r.record(r.string(),r.unknown()).optional(),app_version:r.string().optional(),platform:r.string().optional(),os_name:r.string().optional(),os_version:r.string().optional(),device_brand:r.string().optional(),device_manufacturer:r.string().optional(),device_model:r.string().optional(),carrier:r.string().optional(),country:r.string().optional(),region:r.string().optional(),city:r.string().optional(),dma:r.string().optional(),language:r.string().optional(),ip:r.string().optional(),insert_id:r.string().optional(),session_id:r.number().optional(),createdAt:r.coerce.date().nullable().optional()}),rt=r.object({id:r.string(),user_id:r.string().optional(),user_properties:r.record(r.string(),r.unknown()).optional(),canonical_amplitude_id:r.number().optional(),last_seen:r.number().optional(),is_identified:r.boolean().optional(),country:r.string().optional(),region:r.string().optional(),city:r.string().optional(),language:r.string().optional(),platform:r.string().optional(),os:r.string().optional(),device:r.string().optional(),createdAt:r.coerce.date().nullable().optional()}),at=r.object({id:r.string(),name:r.string(),description:r.string().optional(),app_id:r.number().optional(),owners:r.array(r.string()).optional(),published:r.boolean().optional(),archived:r.boolean().optional(),size:r.number().optional(),last_computed:r.number().optional(),last_modified:r.number().optional(),is_predefined:r.boolean().optional(),type:r.string().optional(),createdAt:r.coerce.date().nullable().optional()});var pt={version:"1.0.0",entities:{events:it,users:rt,cohorts:at}};import{logEventFromContext as dt}from"corsair/core";import{z as i}from"zod";import{verifyHmacSignature as pe}from"corsair/http";var de=i.object({user_id:i.string().optional(),device_id:i.string().optional(),user_properties:i.record(i.string(),i.unknown()).optional(),country:i.string().optional(),city:i.string().optional(),region:i.string().optional(),language:i.string().optional(),platform:i.string().optional(),os:i.string().optional()}),G=i.object({type:i.literal("event.track"),event_id:i.string(),event_type:i.string(),user_id:i.string().optional(),device_id:i.string().optional(),time:i.number(),event_properties:i.record(i.string(),i.unknown()).optional(),user_properties:i.record(i.string(),i.unknown()).optional(),app_version:i.string().optional(),platform:i.string().optional(),session_id:i.number().optional(),insert_id:i.string().optional()}),S=i.object({type:i.literal("event.identify"),user_id:i.string().optional(),device_id:i.string().optional(),time:i.number(),user_properties:i.record(i.string(),i.unknown()).optional(),app_version:i.string().optional(),platform:i.string().optional(),insert_id:i.string().optional()}),w=i.object({type:i.literal("annotation.created"),annotation_id:i.number(),date:i.string(),label:i.string(),details:i.string().optional(),app_id:i.number().optional(),source:i.string().optional(),created_at:i.string()}),R=i.object({type:i.literal("annotation.updated"),annotation_id:i.number(),date:i.string(),label:i.string(),details:i.string().optional(),app_id:i.number().optional(),source:i.string().optional(),updated_at:i.string()}),U=i.object({type:i.literal("monitor.alert"),monitor_id:i.string(),monitor_name:i.string(),alert_type:i.string(),condition:i.string().optional(),value:i.number().optional(),threshold:i.number().optional(),triggered_at:i.string(),chart_id:i.string().optional(),dashboard_id:i.number().optional(),recipients:i.array(i.string()).optional()}),L=i.object({type:i.literal("cohort.computed"),cohort_id:i.string(),cohort_name:i.string(),app_id:i.number().optional(),size:i.number(),computed_at:i.string(),published:i.boolean().optional()}),P=i.object({type:i.literal("experiment.exposure"),flag_key:i.string(),variant:i.string(),user:de,time:i.number(),experiment_key:i.string().optional(),metadata:i.object({deployment_name:i.string().optional(),flag_version:i.number().optional()}).optional()});function ue(e){return typeof e=="string"?JSON.parse(e):e}function c(e){return n=>ue(n.body).type===e}function m(e,n){if(!n)return{valid:!1,error:"Missing webhook secret"};let s=e.rawBody;if(!s)return{valid:!1,error:"Missing raw body for signature verification"};let o=e.headers,a=Array.isArray(o["x-amplitude-signature"])?o["x-amplitude-signature"][0]:o["x-amplitude-signature"];return a?pe(s,n,a)?{valid:!0}:{valid:!1,error:"Invalid signature"}:{valid:!1,error:"Missing x-amplitude-signature header"}}var ut={match:c("annotation.created"),handler:async(e,n)=>{let s=m(n,e.key);if(!s.valid)return{success:!1,statusCode:401,error:s.error||"Signature verification failed"};let o=n.payload.data;return o?(await dt(e,"amplitude.webhook.annotations.created",{...o},"completed"),{success:!0,data:o}):{success:!0,data:void 0}}},lt={match:c("annotation.updated"),handler:async(e,n)=>{let s=m(n,e.key);if(!s.valid)return{success:!1,statusCode:401,error:s.error||"Signature verification failed"};let o=n.payload.data;return o?(await dt(e,"amplitude.webhook.annotations.updated",{...o},"completed"),{success:!0,data:o}):{success:!0,data:void 0}}};import{logEventFromContext as le}from"corsair/core";var ct={match:c("cohort.computed"),handler:async(e,n)=>{let s=m(n,e.key);if(!s.valid)return{success:!1,statusCode:401,error:s.error||"Signature verification failed"};let o=n.payload.data;if(!o)return{success:!0,data:void 0};let a="";if(e.db.cohorts)try{a=(await e.db.cohorts.upsertByEntityId(o.cohort_id,{...o,name:o.cohort_name,id:o.cohort_id,last_computed:o.computed_at?new Date(o.computed_at).getTime():void 0,createdAt:new Date(o.computed_at)}))?.id||""}catch(p){console.warn("Failed to save cohort to database:",p)}return await le(e,"amplitude.webhook.cohorts.computed",{...o},"completed"),{success:!0,corsairEntityId:a,data:o}}};import{logEventFromContext as mt}from"corsair/core";var ht={match:c("event.track"),handler:async(e,n)=>{let s=m(n,e.key);if(!s.valid)return{success:!1,statusCode:401,error:s.error||"Signature verification failed"};let o=n.payload.data;if(!o)return{success:!0,data:void 0};let a="";if(e.db.events)try{let p=o.event_id??o.insert_id??String(o.time);a=(await e.db.events.upsertByEntityId(p,{...o,id:p,createdAt:new Date(o.time)}))?.id||""}catch(p){console.warn("Failed to save event to database:",p)}return await mt(e,"amplitude.webhook.events.track",{...o},"completed"),{success:!0,corsairEntityId:a,data:o}}},yt={match:c("event.identify"),handler:async(e,n)=>{let s=m(n,e.key);if(!s.valid)return{success:!1,statusCode:401,error:s.error||"Signature verification failed"};let o=n.payload.data;if(!o)return{success:!0,data:void 0};let a="";if(e.db.users)try{let p=o.user_id??o.device_id??o.insert_id??String(o.time);a=(await e.db.users.upsertByEntityId(p,{id:p,user_id:o.user_id,user_properties:o.user_properties,platform:o.platform,createdAt:new Date(o.time)}))?.id||""}catch(p){console.warn("Failed to save user to database:",p)}return await mt(e,"amplitude.webhook.events.identify",{...o},"completed"),{success:!0,corsairEntityId:a,data:o}}};import{logEventFromContext as ce}from"corsair/core";var ft={match:c("experiment.exposure"),handler:async(e,n)=>{let s=m(n,e.key);if(!s.valid)return{success:!1,statusCode:401,error:s.error||"Signature verification failed"};let o=n.payload.data;if(!o)return{success:!0,data:void 0};let a="";if(e.db.events)try{let p=[o.flag_key,o.variant,String(o.time)].join(":");a=(await e.db.events.upsertByEntityId(p,{...o,id:p,event_type:"experiment.exposure",event_properties:{flag_key:o.flag_key,variant:o.variant,experiment_key:o.experiment_key,...o.metadata},createdAt:new Date(o.time)}))?.id||""}catch(p){console.warn("Failed to save experiment exposure event to database:",p)}if(e.db.users)try{let p=o.user.user_id??o.user.device_id;p&&await e.db.users.upsertByEntityId(p,{...o.user,id:p,createdAt:new Date(o.time)})}catch(p){console.warn("Failed to save user from experiment exposure to database:",p)}return await ce(e,"amplitude.webhook.experiments.exposure",{...o},"completed"),{success:!0,corsairEntityId:a,data:o}}};import{logEventFromContext as me}from"corsair/core";var bt={match:c("monitor.alert"),handler:async(e,n)=>{let s=m(n,e.key);if(!s.valid)return{success:!1,statusCode:401,error:s.error||"Signature verification failed"};let o=n.payload.data;return o?(await me(e,"amplitude.webhook.monitors.alert",{...o},"completed"),{success:!0,data:o}):{success:!0,data:void 0}}};var D={track:ht,identify:yt},T={created:ut,updated:lt},vt={alert:bt},gt={computed:ct},At={exposure:ft};var he={events:{upload:h.upload,uploadBatch:h.uploadBatch,identifyUser:h.identifyUser,getList:h.getList},users:{search:_.search,getProfile:_.getProfile,getActivity:_.getActivity},cohorts:{list:y.list,get:y.get,create:y.create,getMembers:y.getMembers},charts:{get:ot.get},dashboards:{list:x.list,get:x.get},annotations:{list:I.list,create:I.create},exports:{getData:nt.getData}},ye={events:{track:D.track,identify:D.identify},annotations:{created:T.created,updated:T.updated},monitors:{alert:vt.alert},cohorts:{computed:gt.computed},experiments:{exposure:At.exposure}},fe={"events.upload":{input:u.eventsUpload,output:l.eventsUpload},"events.uploadBatch":{input:u.eventsUploadBatch,output:l.eventsUploadBatch},"events.identifyUser":{input:u.eventsIdentifyUser,output:l.eventsIdentifyUser},"events.getList":{input:u.eventsGetList,output:l.eventsGetList},"users.search":{input:u.usersSearch,output:l.usersSearch},"users.getProfile":{input:u.usersGetProfile,output:l.usersGetProfile},"users.getActivity":{input:u.usersGetActivity,output:l.usersGetActivity},"cohorts.list":{input:u.cohortsList,output:l.cohortsList},"cohorts.get":{input:u.cohortsGet,output:l.cohortsGet},"cohorts.create":{input:u.cohortsCreate,output:l.cohortsCreate},"cohorts.getMembers":{input:u.cohortsGetMembers,output:l.cohortsGetMembers},"charts.get":{input:u.chartsGet,output:l.chartsGet},"dashboards.list":{input:u.dashboardsList,output:l.dashboardsList},"dashboards.get":{input:u.dashboardsGet,output:l.dashboardsGet},"annotations.list":{input:u.annotationsList,output:l.annotationsList},"annotations.create":{input:u.annotationsCreate,output:l.annotationsCreate},"exports.getData":{input:u.exportsGetData,output:l.exportsGetData}},be={"events.upload":{riskLevel:"write",description:"Upload one or more events to Amplitude via HTTP API v2"},"events.uploadBatch":{riskLevel:"write",description:"Batch upload events to Amplitude"},"events.identifyUser":{riskLevel:"write",description:"Set or update user properties via the Identify API"},"events.getList":{riskLevel:"read",description:"List all event types tracked in the project"},"users.search":{riskLevel:"read",description:"Search for users by user ID or device ID"},"users.getProfile":{riskLevel:"read",description:"Get the profile and properties for a specific user"},"users.getActivity":{riskLevel:"read",description:"Get recent event activity for a specific user"},"cohorts.list":{riskLevel:"read",description:"List all cohorts in the project"},"cohorts.get":{riskLevel:"read",description:"Get details for a specific cohort by ID"},"cohorts.create":{riskLevel:"write",description:"Create a new static cohort from a list of user or device IDs"},"cohorts.getMembers":{riskLevel:"read",description:"Retrieve the member download for a cohort export request"},"charts.get":{riskLevel:"read",description:"Get the data results for a specific chart by ID"},"dashboards.list":{riskLevel:"read",description:"List all dashboards in the project"},"dashboards.get":{riskLevel:"read",description:"Get details and chart list for a specific dashboard"},"annotations.list":{riskLevel:"read",description:"List all chart annotations for the project"},"annotations.create":{riskLevel:"write",description:"Create a new chart annotation on a specific date"},"exports.getData":{riskLevel:"read",description:"Export raw event data for a given time range as a zip archive"}},ve={"events.track":{description:"An event was tracked by Amplitude",payload:G,response:G},"events.identify":{description:"A user identify call was received by Amplitude",payload:S,response:S},"annotations.created":{description:"A new chart annotation was created",payload:w,response:w},"annotations.updated":{description:"A chart annotation was updated",payload:R,response:R},"monitors.alert":{description:"An alert monitor threshold was triggered",payload:U,response:U},"cohorts.computed":{description:"A cohort finished computing",payload:L,response:L},"experiments.exposure":{description:"An experiment exposure was tracked for a user",payload:P,response:P}},ge="api_key",Mo={api_key:{account:["one"]}};function Oo(e={}){let n={...e,authType:e.authType??ge};return{id:"amplitude",schema:pt,options:n,hooks:n.hooks,webhookHooks:n.webhookHooks,endpoints:he,webhooks:ye,endpointMeta:be,endpointSchemas:fe,webhookSchemas:ve,pluginWebhookMatcher:s=>"x-amplitude-signature"in s.headers,errorHandlers:{...st,...n.errorHandlers},keyBuilder:async(s,o)=>{if(o==="webhook"&&n.webhookSecret)return n.webhookSecret;if(o==="webhook"){let a=await s.keys.get_webhook_signature();return a||""}if(o==="endpoint"&&n.key)return n.key;if(o==="endpoint"&&s.authType==="api_key"){let a=await s.keys.get_api_key();return a||""}return""}}}export{Oo as amplitude,Mo as amplitudeAuthConfig,fe as amplitudeEndpointSchemas,c as createAmplitudeMatch};
@@ -0,0 +1,170 @@
1
+ import { z } from 'zod';
2
+ export declare const AmplitudeEvent: z.ZodObject<{
3
+ id: z.ZodString;
4
+ event_type: z.ZodString;
5
+ user_id: z.ZodOptional<z.ZodString>;
6
+ device_id: z.ZodOptional<z.ZodString>;
7
+ time: z.ZodOptional<z.ZodNumber>;
8
+ event_properties: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
9
+ user_properties: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
10
+ app_version: z.ZodOptional<z.ZodString>;
11
+ platform: z.ZodOptional<z.ZodString>;
12
+ os_name: z.ZodOptional<z.ZodString>;
13
+ os_version: z.ZodOptional<z.ZodString>;
14
+ device_brand: z.ZodOptional<z.ZodString>;
15
+ device_manufacturer: z.ZodOptional<z.ZodString>;
16
+ device_model: z.ZodOptional<z.ZodString>;
17
+ carrier: z.ZodOptional<z.ZodString>;
18
+ country: z.ZodOptional<z.ZodString>;
19
+ region: z.ZodOptional<z.ZodString>;
20
+ city: z.ZodOptional<z.ZodString>;
21
+ dma: z.ZodOptional<z.ZodString>;
22
+ language: z.ZodOptional<z.ZodString>;
23
+ ip: z.ZodOptional<z.ZodString>;
24
+ insert_id: z.ZodOptional<z.ZodString>;
25
+ session_id: z.ZodOptional<z.ZodNumber>;
26
+ createdAt: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
27
+ }, "strip", z.ZodTypeAny, {
28
+ id: string;
29
+ event_type: string;
30
+ user_id?: string | undefined;
31
+ device_id?: string | undefined;
32
+ time?: number | undefined;
33
+ event_properties?: Record<string, unknown> | undefined;
34
+ user_properties?: Record<string, unknown> | undefined;
35
+ app_version?: string | undefined;
36
+ platform?: string | undefined;
37
+ os_name?: string | undefined;
38
+ os_version?: string | undefined;
39
+ device_brand?: string | undefined;
40
+ device_manufacturer?: string | undefined;
41
+ device_model?: string | undefined;
42
+ carrier?: string | undefined;
43
+ country?: string | undefined;
44
+ region?: string | undefined;
45
+ city?: string | undefined;
46
+ language?: string | undefined;
47
+ ip?: string | undefined;
48
+ insert_id?: string | undefined;
49
+ session_id?: number | undefined;
50
+ dma?: string | undefined;
51
+ createdAt?: Date | null | undefined;
52
+ }, {
53
+ id: string;
54
+ event_type: string;
55
+ user_id?: string | undefined;
56
+ device_id?: string | undefined;
57
+ time?: number | undefined;
58
+ event_properties?: Record<string, unknown> | undefined;
59
+ user_properties?: Record<string, unknown> | undefined;
60
+ app_version?: string | undefined;
61
+ platform?: string | undefined;
62
+ os_name?: string | undefined;
63
+ os_version?: string | undefined;
64
+ device_brand?: string | undefined;
65
+ device_manufacturer?: string | undefined;
66
+ device_model?: string | undefined;
67
+ carrier?: string | undefined;
68
+ country?: string | undefined;
69
+ region?: string | undefined;
70
+ city?: string | undefined;
71
+ language?: string | undefined;
72
+ ip?: string | undefined;
73
+ insert_id?: string | undefined;
74
+ session_id?: number | undefined;
75
+ dma?: string | undefined;
76
+ createdAt?: Date | null | undefined;
77
+ }>;
78
+ export declare const AmplitudeUser: z.ZodObject<{
79
+ id: z.ZodString;
80
+ user_id: z.ZodOptional<z.ZodString>;
81
+ user_properties: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
82
+ canonical_amplitude_id: z.ZodOptional<z.ZodNumber>;
83
+ last_seen: z.ZodOptional<z.ZodNumber>;
84
+ is_identified: z.ZodOptional<z.ZodBoolean>;
85
+ country: z.ZodOptional<z.ZodString>;
86
+ region: z.ZodOptional<z.ZodString>;
87
+ city: z.ZodOptional<z.ZodString>;
88
+ language: z.ZodOptional<z.ZodString>;
89
+ platform: z.ZodOptional<z.ZodString>;
90
+ os: z.ZodOptional<z.ZodString>;
91
+ device: z.ZodOptional<z.ZodString>;
92
+ createdAt: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
93
+ }, "strip", z.ZodTypeAny, {
94
+ id: string;
95
+ user_id?: string | undefined;
96
+ user_properties?: Record<string, unknown> | undefined;
97
+ platform?: string | undefined;
98
+ country?: string | undefined;
99
+ region?: string | undefined;
100
+ city?: string | undefined;
101
+ language?: string | undefined;
102
+ last_seen?: number | undefined;
103
+ is_identified?: boolean | undefined;
104
+ os?: string | undefined;
105
+ device?: string | undefined;
106
+ canonical_amplitude_id?: number | undefined;
107
+ createdAt?: Date | null | undefined;
108
+ }, {
109
+ id: string;
110
+ user_id?: string | undefined;
111
+ user_properties?: Record<string, unknown> | undefined;
112
+ platform?: string | undefined;
113
+ country?: string | undefined;
114
+ region?: string | undefined;
115
+ city?: string | undefined;
116
+ language?: string | undefined;
117
+ last_seen?: number | undefined;
118
+ is_identified?: boolean | undefined;
119
+ os?: string | undefined;
120
+ device?: string | undefined;
121
+ canonical_amplitude_id?: number | undefined;
122
+ createdAt?: Date | null | undefined;
123
+ }>;
124
+ export declare const AmplitudeCohort: z.ZodObject<{
125
+ id: z.ZodString;
126
+ name: z.ZodString;
127
+ description: z.ZodOptional<z.ZodString>;
128
+ app_id: z.ZodOptional<z.ZodNumber>;
129
+ owners: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
130
+ published: z.ZodOptional<z.ZodBoolean>;
131
+ archived: z.ZodOptional<z.ZodBoolean>;
132
+ size: z.ZodOptional<z.ZodNumber>;
133
+ last_computed: z.ZodOptional<z.ZodNumber>;
134
+ last_modified: z.ZodOptional<z.ZodNumber>;
135
+ is_predefined: z.ZodOptional<z.ZodBoolean>;
136
+ type: z.ZodOptional<z.ZodString>;
137
+ createdAt: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
138
+ }, "strip", z.ZodTypeAny, {
139
+ id: string;
140
+ name: string;
141
+ type?: string | undefined;
142
+ description?: string | undefined;
143
+ owners?: string[] | undefined;
144
+ published?: boolean | undefined;
145
+ archived?: boolean | undefined;
146
+ app_id?: number | undefined;
147
+ size?: number | undefined;
148
+ last_computed?: number | undefined;
149
+ last_modified?: number | undefined;
150
+ is_predefined?: boolean | undefined;
151
+ createdAt?: Date | null | undefined;
152
+ }, {
153
+ id: string;
154
+ name: string;
155
+ type?: string | undefined;
156
+ description?: string | undefined;
157
+ owners?: string[] | undefined;
158
+ published?: boolean | undefined;
159
+ archived?: boolean | undefined;
160
+ app_id?: number | undefined;
161
+ size?: number | undefined;
162
+ last_computed?: number | undefined;
163
+ last_modified?: number | undefined;
164
+ is_predefined?: boolean | undefined;
165
+ createdAt?: Date | null | undefined;
166
+ }>;
167
+ export type AmplitudeEvent = z.infer<typeof AmplitudeEvent>;
168
+ export type AmplitudeUser = z.infer<typeof AmplitudeUser>;
169
+ export type AmplitudeCohort = z.infer<typeof AmplitudeCohort>;
170
+ //# sourceMappingURL=database.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../schema/database.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2BzB,CAAC;AAEH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgBxB,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAc1B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAC5D,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAC1D,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC"}
@@ -0,0 +1,171 @@
1
+ export declare const AmplitudeSchema: {
2
+ readonly version: "1.0.0";
3
+ readonly entities: {
4
+ readonly events: import("zod").ZodObject<{
5
+ id: import("zod").ZodString;
6
+ event_type: import("zod").ZodString;
7
+ user_id: import("zod").ZodOptional<import("zod").ZodString>;
8
+ device_id: import("zod").ZodOptional<import("zod").ZodString>;
9
+ time: import("zod").ZodOptional<import("zod").ZodNumber>;
10
+ event_properties: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
11
+ user_properties: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
12
+ app_version: import("zod").ZodOptional<import("zod").ZodString>;
13
+ platform: import("zod").ZodOptional<import("zod").ZodString>;
14
+ os_name: import("zod").ZodOptional<import("zod").ZodString>;
15
+ os_version: import("zod").ZodOptional<import("zod").ZodString>;
16
+ device_brand: import("zod").ZodOptional<import("zod").ZodString>;
17
+ device_manufacturer: import("zod").ZodOptional<import("zod").ZodString>;
18
+ device_model: import("zod").ZodOptional<import("zod").ZodString>;
19
+ carrier: import("zod").ZodOptional<import("zod").ZodString>;
20
+ country: import("zod").ZodOptional<import("zod").ZodString>;
21
+ region: import("zod").ZodOptional<import("zod").ZodString>;
22
+ city: import("zod").ZodOptional<import("zod").ZodString>;
23
+ dma: import("zod").ZodOptional<import("zod").ZodString>;
24
+ language: import("zod").ZodOptional<import("zod").ZodString>;
25
+ ip: import("zod").ZodOptional<import("zod").ZodString>;
26
+ insert_id: import("zod").ZodOptional<import("zod").ZodString>;
27
+ session_id: import("zod").ZodOptional<import("zod").ZodNumber>;
28
+ createdAt: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodDate>>;
29
+ }, "strip", import("zod").ZodTypeAny, {
30
+ id: string;
31
+ event_type: string;
32
+ user_id?: string | undefined;
33
+ device_id?: string | undefined;
34
+ time?: number | undefined;
35
+ event_properties?: Record<string, unknown> | undefined;
36
+ user_properties?: Record<string, unknown> | undefined;
37
+ app_version?: string | undefined;
38
+ platform?: string | undefined;
39
+ os_name?: string | undefined;
40
+ os_version?: string | undefined;
41
+ device_brand?: string | undefined;
42
+ device_manufacturer?: string | undefined;
43
+ device_model?: string | undefined;
44
+ carrier?: string | undefined;
45
+ country?: string | undefined;
46
+ region?: string | undefined;
47
+ city?: string | undefined;
48
+ language?: string | undefined;
49
+ ip?: string | undefined;
50
+ insert_id?: string | undefined;
51
+ session_id?: number | undefined;
52
+ dma?: string | undefined;
53
+ createdAt?: Date | null | undefined;
54
+ }, {
55
+ id: string;
56
+ event_type: string;
57
+ user_id?: string | undefined;
58
+ device_id?: string | undefined;
59
+ time?: number | undefined;
60
+ event_properties?: Record<string, unknown> | undefined;
61
+ user_properties?: Record<string, unknown> | undefined;
62
+ app_version?: string | undefined;
63
+ platform?: string | undefined;
64
+ os_name?: string | undefined;
65
+ os_version?: string | undefined;
66
+ device_brand?: string | undefined;
67
+ device_manufacturer?: string | undefined;
68
+ device_model?: string | undefined;
69
+ carrier?: string | undefined;
70
+ country?: string | undefined;
71
+ region?: string | undefined;
72
+ city?: string | undefined;
73
+ language?: string | undefined;
74
+ ip?: string | undefined;
75
+ insert_id?: string | undefined;
76
+ session_id?: number | undefined;
77
+ dma?: string | undefined;
78
+ createdAt?: Date | null | undefined;
79
+ }>;
80
+ readonly users: import("zod").ZodObject<{
81
+ id: import("zod").ZodString;
82
+ user_id: import("zod").ZodOptional<import("zod").ZodString>;
83
+ user_properties: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
84
+ canonical_amplitude_id: import("zod").ZodOptional<import("zod").ZodNumber>;
85
+ last_seen: import("zod").ZodOptional<import("zod").ZodNumber>;
86
+ is_identified: import("zod").ZodOptional<import("zod").ZodBoolean>;
87
+ country: import("zod").ZodOptional<import("zod").ZodString>;
88
+ region: import("zod").ZodOptional<import("zod").ZodString>;
89
+ city: import("zod").ZodOptional<import("zod").ZodString>;
90
+ language: import("zod").ZodOptional<import("zod").ZodString>;
91
+ platform: import("zod").ZodOptional<import("zod").ZodString>;
92
+ os: import("zod").ZodOptional<import("zod").ZodString>;
93
+ device: import("zod").ZodOptional<import("zod").ZodString>;
94
+ createdAt: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodDate>>;
95
+ }, "strip", import("zod").ZodTypeAny, {
96
+ id: string;
97
+ user_id?: string | undefined;
98
+ user_properties?: Record<string, unknown> | undefined;
99
+ platform?: string | undefined;
100
+ country?: string | undefined;
101
+ region?: string | undefined;
102
+ city?: string | undefined;
103
+ language?: string | undefined;
104
+ last_seen?: number | undefined;
105
+ is_identified?: boolean | undefined;
106
+ os?: string | undefined;
107
+ device?: string | undefined;
108
+ canonical_amplitude_id?: number | undefined;
109
+ createdAt?: Date | null | undefined;
110
+ }, {
111
+ id: string;
112
+ user_id?: string | undefined;
113
+ user_properties?: Record<string, unknown> | undefined;
114
+ platform?: string | undefined;
115
+ country?: string | undefined;
116
+ region?: string | undefined;
117
+ city?: string | undefined;
118
+ language?: string | undefined;
119
+ last_seen?: number | undefined;
120
+ is_identified?: boolean | undefined;
121
+ os?: string | undefined;
122
+ device?: string | undefined;
123
+ canonical_amplitude_id?: number | undefined;
124
+ createdAt?: Date | null | undefined;
125
+ }>;
126
+ readonly cohorts: import("zod").ZodObject<{
127
+ id: import("zod").ZodString;
128
+ name: import("zod").ZodString;
129
+ description: import("zod").ZodOptional<import("zod").ZodString>;
130
+ app_id: import("zod").ZodOptional<import("zod").ZodNumber>;
131
+ owners: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
132
+ published: import("zod").ZodOptional<import("zod").ZodBoolean>;
133
+ archived: import("zod").ZodOptional<import("zod").ZodBoolean>;
134
+ size: import("zod").ZodOptional<import("zod").ZodNumber>;
135
+ last_computed: import("zod").ZodOptional<import("zod").ZodNumber>;
136
+ last_modified: import("zod").ZodOptional<import("zod").ZodNumber>;
137
+ is_predefined: import("zod").ZodOptional<import("zod").ZodBoolean>;
138
+ type: import("zod").ZodOptional<import("zod").ZodString>;
139
+ createdAt: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodDate>>;
140
+ }, "strip", import("zod").ZodTypeAny, {
141
+ id: string;
142
+ name: string;
143
+ type?: string | undefined;
144
+ description?: string | undefined;
145
+ owners?: string[] | undefined;
146
+ published?: boolean | undefined;
147
+ archived?: boolean | undefined;
148
+ app_id?: number | undefined;
149
+ size?: number | undefined;
150
+ last_computed?: number | undefined;
151
+ last_modified?: number | undefined;
152
+ is_predefined?: boolean | undefined;
153
+ createdAt?: Date | null | undefined;
154
+ }, {
155
+ id: string;
156
+ name: string;
157
+ type?: string | undefined;
158
+ description?: string | undefined;
159
+ owners?: string[] | undefined;
160
+ published?: boolean | undefined;
161
+ archived?: boolean | undefined;
162
+ app_id?: number | undefined;
163
+ size?: number | undefined;
164
+ last_computed?: number | undefined;
165
+ last_modified?: number | undefined;
166
+ is_predefined?: boolean | undefined;
167
+ createdAt?: Date | null | undefined;
168
+ }>;
169
+ };
170
+ };
171
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../schema/index.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOlB,CAAC"}
@@ -0,0 +1,3 @@
1
+ declare const _default: import("tsup").Options | import("tsup").Options[] | ((overrideOptions: import("tsup").Options) => import("tsup").Options | import("tsup").Options[] | Promise<import("tsup").Options | import("tsup").Options[]>);
2
+ export default _default;
3
+ //# sourceMappingURL=tsup.config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tsup.config.d.ts","sourceRoot":"","sources":["../tsup.config.ts"],"names":[],"mappings":";AAEA,wBAYG"}
@@ -0,0 +1,4 @@
1
+ import type { AmplitudeWebhooks } from '..';
2
+ export declare const created: AmplitudeWebhooks['annotationsCreated'];
3
+ export declare const updated: AmplitudeWebhooks['annotationsUpdated'];
4
+ //# sourceMappingURL=annotations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"annotations.d.ts","sourceRoot":"","sources":["../../webhooks/annotations.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,IAAI,CAAC;AAG5C,eAAO,MAAM,OAAO,EAAE,iBAAiB,CAAC,oBAAoB,CA4B3D,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,iBAAiB,CAAC,oBAAoB,CA4B3D,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { AmplitudeWebhooks } from '..';
2
+ export declare const computed: AmplitudeWebhooks['cohortsComputed'];
3
+ //# sourceMappingURL=cohorts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cohorts.d.ts","sourceRoot":"","sources":["../../webhooks/cohorts.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,IAAI,CAAC;AAG5C,eAAO,MAAM,QAAQ,EAAE,iBAAiB,CAAC,iBAAiB,CA+CzD,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { AmplitudeWebhooks } from '..';
2
+ export declare const track: AmplitudeWebhooks['eventsTrack'];
3
+ export declare const identify: AmplitudeWebhooks['eventsIdentify'];
4
+ //# sourceMappingURL=events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../webhooks/events.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,IAAI,CAAC;AAG5C,eAAO,MAAM,KAAK,EAAE,iBAAiB,CAAC,aAAa,CA6ClD,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,iBAAiB,CAAC,gBAAgB,CAkDxD,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { AmplitudeWebhooks } from '..';
2
+ export declare const exposure: AmplitudeWebhooks['experimentsExposure'];
3
+ //# sourceMappingURL=experiments.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"experiments.d.ts","sourceRoot":"","sources":["../../webhooks/experiments.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,IAAI,CAAC;AAG5C,eAAO,MAAM,QAAQ,EAAE,iBAAiB,CAAC,qBAAqB,CA4E7D,CAAC"}