@stack0/sdk 0.5.8 → 0.5.11

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.
package/dist/index.d.ts CHANGED
@@ -1,14 +1,15 @@
1
- import { Mail } from './mail/index.js';
2
- export { AddContactToSequenceRequest, AddContactsToAudienceRequest, AddContactsToAudienceResponse, AddDomainRequest, AddDomainResponse, ArchiveSequenceResponse, Attachment, Audience, AudienceContact, Audiences, BatchTrackEventsRequest, BatchTrackEventsResponse, Campaign, CampaignStatsResponse, CampaignStatus, Campaigns, CancelCampaignResponse, CancelEmailResponse, ConnectionType, ContactStatus, Contacts, CreateAudienceRequest, CreateCampaignRequest, CreateConnectionRequest, CreateContactRequest, CreateEventRequest, CreateNodeRequest, CreateSequenceRequest, CreateTemplateRequest, DeleteAudienceResponse, DeleteCampaignResponse, DeleteConnectionResponse, DeleteContactResponse, DeleteDomainResponse, DeleteEventResponse, DeleteNodeResponse, DeleteSequenceResponse, DeleteTemplateResponse, DnsRecord, Domain, DomainStatus, Domains, Email, EmailAddress, EmailAnalyticsResponse, EmailRecipient, EmailStatus, EventAnalyticsResponse, EventOccurrence, EventPropertiesSchema, EventProperty, Events, GetDnsRecordsResponse, GetEmailResponse, HourlyAnalyticsDataPoint, HourlyAnalyticsResponse, ImportContactsRequest, ImportContactsResponse, ListAudienceContactsRequest, ListAudienceContactsResponse, ListAudiencesRequest, ListAudiencesResponse, ListCampaignsRequest, ListCampaignsResponse, ListContactsRequest, ListContactsResponse, ListDomainsRequest, ListDomainsResponse, ListEmailsRequest, ListEmailsResponse, ListEventOccurrencesRequest, ListEventOccurrencesResponse, ListEventsRequest, ListEventsResponse, ListSendersRequest, ListSendersResponse, ListSequenceEntriesRequest, ListSequenceEntriesResponse, ListSequencesRequest, ListSequencesResponse, ListTemplatesRequest, ListTemplatesResponse, MailContact, MailEvent, PauseCampaignResponse, PauseSequenceResponse, PreviewTemplateRequest, PreviewTemplateResponse, PublishSequenceResponse, RemoveContactFromSequenceRequest, RemoveContactFromSequenceResponse, RemoveContactsFromAudienceRequest, RemoveContactsFromAudienceResponse, ResendEmailResponse, ResumeSequenceResponse, SendBatchEmailRequest, SendBatchEmailResponse, SendBroadcastEmailRequest, SendBroadcastEmailResponse, SendCampaignRequest, SendCampaignResponse, SendEmailRequest, SendEmailResponse, Sender, Sequence, SequenceAnalyticsResponse, SequenceConnection, SequenceEntry, SequenceEntryStatus, SequenceNode, SequenceNodeType, SequenceStatus, SequenceTriggerFrequency, SequenceTriggerType, SequenceWithNodes, Sequences, SetDefaultDomainResponse, SetNodeBranchRequest, SetNodeEmailRequest, SetNodeExperimentRequest, SetNodeFilterRequest, SetNodeTimerRequest, Template, Templates, TimeSeriesAnalyticsRequest, TimeSeriesAnalyticsResponse, TimeSeriesDataPoint, TrackEventRequest, TrackEventResponse, UpdateAudienceRequest, UpdateCampaignRequest, UpdateContactRequest, UpdateEventRequest, UpdateNodePositionRequest, UpdateNodeRequest, UpdateSequenceRequest, UpdateTemplateRequest, VerifyDomainResponse } from './mail/index.js';
1
+ import { Mail as Mail$1 } from './mail/index.js';
2
+ export { AddContactToSequenceRequest, AddContactsToAudienceRequest, AddContactsToAudienceResponse, AddDomainRequest, AddDomainResponse, ArchiveSequenceResponse, Attachment, Audience, AudienceContact, Audiences, BatchTrackEventsRequest, BatchTrackEventsResponse, Campaign, CampaignStatsResponse, CampaignStatus, Campaigns, CancelCampaignResponse, CancelEmailResponse, ConnectionType, ContactStatus, Contacts, CreateAudienceRequest, CreateCampaignRequest, CreateConnectionRequest, CreateContactRequest, CreateEventRequest, CreateMailboxRequest, CreateNodeRequest, CreateSequenceRequest, CreateTemplateRequest, DeleteAudienceResponse, DeleteCampaignResponse, DeleteConnectionResponse, DeleteContactResponse, DeleteDomainResponse, DeleteEventResponse, DeleteNodeResponse, DeleteSequenceResponse, DeleteTemplateResponse, DnsRecord, Domain, DomainStatus, Domains, Email, EmailAddress, EmailAnalyticsResponse, EmailRecipient, EmailStatus, EventAnalyticsResponse, EventOccurrence, EventPropertiesSchema, EventProperty, Events, GetDnsRecordsResponse, GetEmailResponse, HourlyAnalyticsDataPoint, HourlyAnalyticsResponse, ImportContactsRequest, ImportContactsResponse, InboundAttachment, InboundEmailAddress, InboundMessage, InboundWebhookPayload, ListAudienceContactsRequest, ListAudienceContactsResponse, ListAudiencesRequest, ListAudiencesResponse, ListCampaignsRequest, ListCampaignsResponse, ListContactsRequest, ListContactsResponse, ListDomainsRequest, ListDomainsResponse, ListEmailsRequest, ListEmailsResponse, ListEventOccurrencesRequest, ListEventOccurrencesResponse, ListEventsRequest, ListEventsResponse, ListInboundMessagesRequest, ListInboundMessagesResponse, ListMailboxesRequest, ListMailboxesResponse, ListSendersRequest, ListSendersResponse, ListSequenceEntriesRequest, ListSequenceEntriesResponse, ListSequencesRequest, ListSequencesResponse, ListTemplatesRequest, ListTemplatesResponse, MailContact, MailEvent, Mailbox, Mailboxes, PauseCampaignResponse, PauseSequenceResponse, PreviewTemplateRequest, PreviewTemplateResponse, PublishSequenceResponse, RemoveContactFromSequenceRequest, RemoveContactFromSequenceResponse, RemoveContactsFromAudienceRequest, RemoveContactsFromAudienceResponse, ResendEmailResponse, ResumeSequenceResponse, SendBatchEmailRequest, SendBatchEmailResponse, SendBroadcastEmailRequest, SendBroadcastEmailResponse, SendCampaignRequest, SendCampaignResponse, SendEmailRequest, SendEmailResponse, Sender, Sequence, SequenceAnalyticsResponse, SequenceConnection, SequenceEntry, SequenceEntryStatus, SequenceNode, SequenceNodeType, SequenceStatus, SequenceTriggerFrequency, SequenceTriggerType, SequenceWithNodes, Sequences, SetDefaultDomainResponse, SetNodeBranchRequest, SetNodeEmailRequest, SetNodeExperimentRequest, SetNodeFilterRequest, SetNodeTimerRequest, Template, Templates, TimeSeriesAnalyticsRequest, TimeSeriesAnalyticsResponse, TimeSeriesDataPoint, TrackEventRequest, TrackEventResponse, UpdateAudienceRequest, UpdateCampaignRequest, UpdateContactRequest, UpdateEventRequest, UpdateMailboxRequest, UpdateNodePositionRequest, UpdateNodeRequest, UpdateSequenceRequest, UpdateTemplateRequest, VerifyDomainResponse } from './mail/index.js';
3
3
  import { CDN } from './cdn/index.js';
4
- export { Asset, AssetStatus, AssetType, AudioTrackInput, BundleDownloadUrlRequest, BundleDownloadUrlResponse, BundleStatus, CancelMergeJobRequest, CdnEnvironment, CdnStorageBreakdownItem, CdnStorageBreakdownRequest, CdnStorageBreakdownResponse, CdnUsageDataPoint, CdnUsageHistoryRequest, CdnUsageHistoryResponse, CdnUsageRequest, CdnUsageResponse, ConfirmUploadRequest, ConfirmUploadResponse, CreateBundleRequest, CreateBundleResponse, CreateFolderRequest, CreateMergeJobRequest, DeleteAssetRequest, DeleteAssetsRequest, DeleteAssetsResponse, DownloadBundle, ExtractAudioRequest, ExtractAudioResponse, Folder, FolderListItem, FolderTreeNode, GenerateGifRequest, GetAssetRequest, GetFolderByPathRequest, GetFolderRequest, GetFolderTreeRequest, GetMergeJobRequest, GifStatus, ImageWatermarkConfig, ImageWatermarkPosition, ImageWatermarkSizingMode, ListAssetsRequest, ListAssetsResponse, ListBundlesRequest, ListBundlesResponse, ListFoldersRequest, ListFoldersResponse, ListGifsRequest, ListJobsRequest, ListJobsResponse, ListMergeJobsRequest, ListMergeJobsResponse, ListPrivateFilesRequest, ListPrivateFilesResponse, ListThumbnailsRequest, ListThumbnailsResponse, MergeInputItem, MergeJob, MergeJobWithOutput, MergeOutputConfig, MergeOutputFormat, MergeQuality, MergeStatus, MoveAssetsRequest, MoveAssetsResponse, MoveFolderRequest, MoveFolderResponse, MovePrivateFilesRequest, MovePrivateFilesResponse, PrivateDownloadUrlRequest, PrivateDownloadUrlResponse, PrivateFile, PrivateFileStatus, PrivateUploadUrlRequest, PrivateUploadUrlResponse, RegenerateThumbnailRequest, RegenerateThumbnailResponse, StreamingUrls, TextOverlay, TextOverlayShadow, TextOverlayStroke, ThumbnailRequest, ThumbnailResponse, TranscodeJob, TranscodeVideoRequest, TranscodingStatus, TransformOptions, TrimOptions, UpdateAssetRequest, UpdateFolderRequest, UpdatePrivateFileRequest, UploadUrlRequest, UploadUrlResponse, VideoCodec, VideoGif, VideoOutputFormat, VideoQuality, VideoThumbnail, VideoVariant, WatermarkOptions } from './cdn/index.js';
4
+ export { Asset, AssetStatus, AssetType, AudioTrackInput, BundleDownloadUrlRequest, BundleDownloadUrlResponse, BundleStatus, CancelImportResponse, CancelMergeJobRequest, CdnEnvironment, CdnStorageBreakdownItem, CdnStorageBreakdownRequest, CdnStorageBreakdownResponse, CdnUsageDataPoint, CdnUsageHistoryRequest, CdnUsageHistoryResponse, CdnUsageRequest, CdnUsageResponse, ConfirmUploadRequest, ConfirmUploadResponse, CreateBundleRequest, CreateBundleResponse, CreateFolderRequest, CreateImportRequest, CreateImportResponse, CreateMergeJobRequest, DeleteAssetRequest, DeleteAssetsRequest, DeleteAssetsResponse, DownloadBundle, ExtractAudioRequest, ExtractAudioResponse, Folder, FolderListItem, FolderTreeNode, GenerateGifRequest, GetAssetRequest, GetFolderByPathRequest, GetFolderRequest, GetFolderTreeRequest, GetMergeJobRequest, GifStatus, ImageWatermarkConfig, ImageWatermarkPosition, ImageWatermarkSizingMode, ImportAuthType, ImportError, ImportFile, ImportFileStatus, ImportJob, ImportJobStatus, ImportJobSummary, ImportPathMode, ListAssetsRequest, ListAssetsResponse, ListBundlesRequest, ListBundlesResponse, ListFoldersRequest, ListFoldersResponse, ListGifsRequest, ListImportFilesRequest, ListImportFilesResponse, ListImportsRequest, ListImportsResponse, ListJobsRequest, ListJobsResponse, ListMergeJobsRequest, ListMergeJobsResponse, ListPrivateFilesRequest, ListPrivateFilesResponse, ListThumbnailsRequest, ListThumbnailsResponse, MergeInputItem, MergeJob, MergeJobWithOutput, MergeOutputConfig, MergeOutputFormat, MergeQuality, MergeStatus, MoveAssetsRequest, MoveAssetsResponse, MoveFolderRequest, MoveFolderResponse, MovePrivateFilesRequest, MovePrivateFilesResponse, PrivateDownloadUrlRequest, PrivateDownloadUrlResponse, PrivateFile, PrivateFileStatus, PrivateUploadUrlRequest, PrivateUploadUrlResponse, RegenerateThumbnailRequest, RegenerateThumbnailResponse, RetryImportResponse, StreamingUrls, TextOverlay, TextOverlayShadow, TextOverlayStroke, ThumbnailRequest, ThumbnailResponse, TranscodeJob, TranscodeVideoRequest, TranscodingStatus, TransformOptions, TrimOptions, UpdateAssetRequest, UpdateFolderRequest, UpdatePrivateFileRequest, UploadFromUrlRequest, UploadUrlRequest, UploadUrlResponse, VideoCodec, VideoGif, VideoOutputFormat, VideoQuality, VideoThumbnail, VideoVariant, WatermarkOptions } from './cdn/index.js';
5
5
  import { Screenshots } from './screenshots/index.js';
6
6
  export { BatchScreenshotJob, Clip, CreateBatchScreenshotsRequest, CreateScreenshotRequest, CreateScreenshotResponse, CreateScreenshotScheduleRequest, DeviceType, GetScreenshotRequest, ListScreenshotsRequest, ListScreenshotsResponse, ResourceType, Screenshot, ScreenshotBatchJobsResponse, ScreenshotFormat, ScreenshotSchedule, ScreenshotSchedulesResponse, ScreenshotStatus, UpdateScreenshotScheduleRequest } from './screenshots/index.js';
7
7
  import { Extraction } from './extraction/index.js';
8
8
  export { BatchExtractionJob, CreateBatchExtractionsRequest, CreateExtractionRequest, CreateExtractionResponse, CreateExtractionScheduleRequest, DailyUsageItem, ExtractionBatchJobsResponse, ExtractionMode, ExtractionResult, ExtractionSchedule, ExtractionSchedulesResponse, ExtractionStatus, ExtractionUsage, GetDailyUsageResponse, GetExtractionRequest, GetUsageRequest, ListExtractionsRequest, ListExtractionsResponse, PageMetadata, UpdateExtractionScheduleRequest } from './extraction/index.js';
9
9
  import { Webdata } from './webdata/index.js';
10
10
  import { H as HttpClient, a as HttpClientConfig } from './http-client-Cgie_Rv6.js';
11
- export { B as BatchJobStatus, C as CreateBatchResponse, e as CreateScheduleResponse, E as Environment, G as GetBatchJobRequest, c as GetScheduleRequest, L as ListBatchJobsRequest, d as ListSchedulesRequest, P as PaginatedRequest, a as PaginatedResponse, b as ScheduleFrequency, S as Stack0Error } from './shared-types-CjKSP5Xc.js';
11
+ import { E as Environment$1 } from './shared-types-CjKSP5Xc.js';
12
+ export { B as BatchJobStatus, C as CreateBatchResponse, e as CreateScheduleResponse, G as GetBatchJobRequest, c as GetScheduleRequest, L as ListBatchJobsRequest, d as ListSchedulesRequest, P as PaginatedRequest, a as PaginatedResponse, b as ScheduleFrequency, S as Stack0Error } from './shared-types-CjKSP5Xc.js';
12
13
 
13
14
  /**
14
15
  * Stack0 Integrations SDK Types
@@ -26,7 +27,7 @@ interface ListOptions {
26
27
  sortOrder?: "asc" | "desc";
27
28
  filters?: Record<string, unknown>;
28
29
  }
29
- type ConnectorCategory = "crm" | "storage" | "communication" | "productivity";
30
+ type ConnectorCategory = "crm" | "storage" | "communication" | "productivity" | "calendar" | "email";
30
31
  interface Connector {
31
32
  id: string;
32
33
  slug: string;
@@ -42,7 +43,7 @@ interface Connection {
42
43
  connectorId: string;
43
44
  connectorSlug: string;
44
45
  name?: string;
45
- status: "pending" | "connected" | "error" | "disconnected";
46
+ status: "pending" | "connected" | "error" | "disconnected" | "expired";
46
47
  externalAccountId?: string;
47
48
  externalAccountName?: string;
48
49
  lastSyncedAt?: Date;
@@ -341,6 +342,129 @@ interface CreateTableRowInput {
341
342
  cells: Record<string, unknown>;
342
343
  }
343
344
  type UpdateTableRowInput = CreateTableRowInput;
345
+ interface CalendarAttendee {
346
+ email: string;
347
+ name?: string;
348
+ status?: "accepted" | "declined" | "tentative" | "needsAction";
349
+ organizer?: boolean;
350
+ }
351
+ interface Calendar {
352
+ id: string;
353
+ name: string;
354
+ description?: string;
355
+ isPrimary?: boolean;
356
+ timeZone?: string;
357
+ createdAt?: Date;
358
+ updatedAt?: Date;
359
+ remoteData?: unknown;
360
+ }
361
+ interface CalendarEvent {
362
+ id: string;
363
+ title: string;
364
+ description?: string;
365
+ startTime: Date;
366
+ endTime: Date;
367
+ isAllDay?: boolean;
368
+ location?: string;
369
+ attendees?: CalendarAttendee[];
370
+ organizer?: CalendarAttendee;
371
+ status?: "confirmed" | "tentative" | "cancelled";
372
+ webUrl?: string;
373
+ calendarId?: string;
374
+ recurrence?: string[];
375
+ createdAt?: Date;
376
+ updatedAt?: Date;
377
+ remoteData?: unknown;
378
+ }
379
+ interface CreateCalendarEventInput {
380
+ title: string;
381
+ description?: string;
382
+ startTime: Date;
383
+ endTime: Date;
384
+ isAllDay?: boolean;
385
+ location?: string;
386
+ attendees?: {
387
+ email: string;
388
+ name?: string;
389
+ }[];
390
+ recurrence?: string[];
391
+ }
392
+ type UpdateCalendarEventInput = Partial<CreateCalendarEventInput>;
393
+ interface ListEventsOptions extends ListOptions {
394
+ timeMin?: Date;
395
+ timeMax?: Date;
396
+ query?: string;
397
+ }
398
+ interface EmailAttachment {
399
+ id?: string;
400
+ filename: string;
401
+ mimeType: string;
402
+ size?: number;
403
+ }
404
+ interface EmailMessage {
405
+ id: string;
406
+ threadId?: string;
407
+ subject?: string;
408
+ from?: string;
409
+ to?: string[];
410
+ cc?: string[];
411
+ bcc?: string[];
412
+ body?: string;
413
+ bodyHtml?: string;
414
+ snippet?: string;
415
+ labels?: string[];
416
+ attachments?: EmailAttachment[];
417
+ isRead?: boolean;
418
+ isStarred?: boolean;
419
+ date?: Date;
420
+ createdAt?: Date;
421
+ updatedAt?: Date;
422
+ remoteData?: unknown;
423
+ }
424
+ interface EmailThread {
425
+ id: string;
426
+ subject?: string;
427
+ snippet?: string;
428
+ messageCount?: number;
429
+ messages?: EmailMessage[];
430
+ lastMessageDate?: Date;
431
+ createdAt?: Date;
432
+ updatedAt?: Date;
433
+ remoteData?: unknown;
434
+ }
435
+ interface EmailLabel {
436
+ id: string;
437
+ name: string;
438
+ type?: "system" | "user";
439
+ messagesTotal?: number;
440
+ messagesUnread?: number;
441
+ }
442
+ interface SendEmailInput {
443
+ to: string[];
444
+ cc?: string[];
445
+ bcc?: string[];
446
+ subject: string;
447
+ body: string;
448
+ bodyHtml?: string;
449
+ replyToMessageId?: string;
450
+ }
451
+ interface ListEmailMessagesOptions extends ListOptions {
452
+ query?: string;
453
+ labelIds?: string[];
454
+ }
455
+ interface CreateConnectionSessionRequest {
456
+ endUserId: string;
457
+ connectorSlug: string;
458
+ redirectUrl: string;
459
+ projectId?: string;
460
+ environment?: IntegrationEnvironment;
461
+ name?: string;
462
+ }
463
+ interface CreateConnectionSessionResponse {
464
+ authUrl: string;
465
+ sessionId: string;
466
+ state: string;
467
+ }
344
468
  interface PassthroughRequest {
345
469
  connectionId: string;
346
470
  method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE";
@@ -356,6 +480,7 @@ interface InitiateOAuthRequest {
356
480
  environment?: IntegrationEnvironment;
357
481
  name?: string;
358
482
  redirectUrl: string;
483
+ endUserId?: string;
359
484
  }
360
485
  interface InitiateOAuthResponse {
361
486
  authUrl: string;
@@ -466,6 +591,7 @@ interface ListConnectionsRequest {
466
591
  environment?: IntegrationEnvironment;
467
592
  connectorSlug?: string;
468
593
  status?: Connection["status"];
594
+ endUserId?: string;
469
595
  limit?: number;
470
596
  }
471
597
  interface ListConnectionsResponse {
@@ -563,6 +689,34 @@ declare class Productivity {
563
689
  success: boolean;
564
690
  }>;
565
691
  }
692
+ /**
693
+ * Calendar operations client
694
+ */
695
+ declare class CalendarClient {
696
+ private http;
697
+ constructor(http: HttpClient);
698
+ listCalendars(connectionId: string, options?: ListOptions): Promise<PaginatedResult<Calendar>>;
699
+ listEvents(connectionId: string, calendarId: string, options?: ListEventsOptions): Promise<PaginatedResult<CalendarEvent>>;
700
+ getEvent(connectionId: string, calendarId: string, eventId: string): Promise<CalendarEvent>;
701
+ createEvent(connectionId: string, calendarId: string, data: CreateCalendarEventInput): Promise<CalendarEvent>;
702
+ updateEvent(connectionId: string, calendarId: string, eventId: string, data: UpdateCalendarEventInput): Promise<CalendarEvent>;
703
+ deleteEvent(connectionId: string, calendarId: string, eventId: string): Promise<{
704
+ success: boolean;
705
+ }>;
706
+ }
707
+ /**
708
+ * Mail (Email) operations client
709
+ */
710
+ declare class Mail {
711
+ private http;
712
+ constructor(http: HttpClient);
713
+ listMessages(connectionId: string, options?: ListEmailMessagesOptions): Promise<PaginatedResult<EmailMessage>>;
714
+ getMessage(connectionId: string, messageId: string): Promise<EmailMessage>;
715
+ sendMessage(connectionId: string, data: SendEmailInput): Promise<EmailMessage>;
716
+ listThreads(connectionId: string, options?: ListEmailMessagesOptions): Promise<PaginatedResult<EmailThread>>;
717
+ getThread(connectionId: string, threadId: string): Promise<EmailThread>;
718
+ listLabels(connectionId: string): Promise<EmailLabel[]>;
719
+ }
566
720
  /**
567
721
  * Stack0 Integrations SDK Client
568
722
  *
@@ -605,6 +759,8 @@ declare class Integrations {
605
759
  storage: Storage;
606
760
  communication: Communication;
607
761
  productivity: Productivity;
762
+ calendar: CalendarClient;
763
+ mail: Mail;
608
764
  constructor(config: HttpClientConfig);
609
765
  /**
610
766
  * List all available connectors
@@ -644,6 +800,20 @@ declare class Integrations {
644
800
  * ```
645
801
  */
646
802
  initiateOAuth(request: InitiateOAuthRequest): Promise<InitiateOAuthResponse>;
803
+ /**
804
+ * Create a connection session for an end user
805
+ *
806
+ * @example
807
+ * ```typescript
808
+ * const { authUrl, sessionId } = await integrations.createConnectionSession({
809
+ * endUserId: 'user_123',
810
+ * connectorSlug: 'google-calendar',
811
+ * redirectUrl: 'https://yourapp.com/oauth/callback',
812
+ * });
813
+ * // Redirect user to authUrl
814
+ * ```
815
+ */
816
+ createConnectionSession(request: CreateConnectionSessionRequest): Promise<CreateConnectionSessionResponse>;
647
817
  /**
648
818
  * Complete OAuth flow with callback data
649
819
  *
@@ -1665,6 +1835,742 @@ declare class Marketing {
1665
1835
  private convertMarketingUsageDates;
1666
1836
  }
1667
1837
 
1838
+ /**
1839
+ * Stack0 Workflows Types
1840
+ * AI workflow orchestration and execution
1841
+ */
1842
+ type Environment = "sandbox" | "production";
1843
+ type Provider = "anthropic" | "openai" | "gemini" | "replicate" | "stack0";
1844
+ type StepType = "llm" | "image" | "video" | "audio" | "code" | "http" | "transform" | "condition" | "loop";
1845
+ type ResponseFormat = "text" | "json";
1846
+ type RunStatus = "pending" | "running" | "completed" | "failed" | "cancelled";
1847
+ type StepRunStatus = "pending" | "running" | "completed" | "failed" | "skipped" | "cancelled";
1848
+ interface StepConfig {
1849
+ prompt?: string;
1850
+ systemPrompt?: string;
1851
+ temperature?: number;
1852
+ maxTokens?: number;
1853
+ responseFormat?: ResponseFormat;
1854
+ imageInputVariable?: string;
1855
+ schema?: Record<string, unknown>;
1856
+ width?: number;
1857
+ height?: number;
1858
+ steps?: number;
1859
+ url?: string;
1860
+ method?: "GET" | "POST" | "PUT" | "DELETE";
1861
+ headers?: Record<string, string>;
1862
+ body?: string;
1863
+ iterateOver?: string;
1864
+ itemVariable?: string;
1865
+ condition?: string;
1866
+ }
1867
+ interface RetryConfig {
1868
+ maxAttempts: number;
1869
+ backoffMs: number;
1870
+ }
1871
+ interface StepDefinition {
1872
+ id: string;
1873
+ name: string;
1874
+ type: StepType;
1875
+ provider: Provider;
1876
+ model: string;
1877
+ config: StepConfig & {
1878
+ subSteps?: StepDefinition[];
1879
+ thenSteps?: StepDefinition[];
1880
+ elseSteps?: StepDefinition[];
1881
+ };
1882
+ dependsOn?: string[];
1883
+ outputVariable?: string;
1884
+ retryConfig?: RetryConfig;
1885
+ }
1886
+ interface VariableDefinition {
1887
+ name: string;
1888
+ type: "string" | "number" | "boolean" | "array" | "object" | "image";
1889
+ required: boolean;
1890
+ default?: unknown;
1891
+ description?: string;
1892
+ }
1893
+ interface Workflow {
1894
+ id: string;
1895
+ slug: string;
1896
+ name: string;
1897
+ description: string | null;
1898
+ steps: StepDefinition[];
1899
+ variables: VariableDefinition[];
1900
+ isActive: boolean;
1901
+ version: number;
1902
+ environment: Environment;
1903
+ createdAt: Date;
1904
+ updatedAt: Date;
1905
+ }
1906
+ interface StepState {
1907
+ status: StepRunStatus;
1908
+ startedAt?: Date;
1909
+ completedAt?: Date;
1910
+ output?: unknown;
1911
+ error?: string;
1912
+ attempts: number;
1913
+ }
1914
+ interface WorkflowRun {
1915
+ id: string;
1916
+ workflowId: string;
1917
+ status: RunStatus;
1918
+ variables: Record<string, unknown>;
1919
+ metadata: Record<string, unknown> | null;
1920
+ currentStepId: string | null;
1921
+ stepStates: Record<string, StepState>;
1922
+ output: Record<string, unknown> | null;
1923
+ error: string | null;
1924
+ totalSteps: number;
1925
+ completedSteps: number;
1926
+ startedAt: Date | null;
1927
+ completedAt: Date | null;
1928
+ totalDurationMs: number | null;
1929
+ creditsUsed: number;
1930
+ environment: Environment;
1931
+ createdAt: Date;
1932
+ }
1933
+ interface CreateWorkflowRequest {
1934
+ projectSlug?: string;
1935
+ environment?: Environment;
1936
+ slug: string;
1937
+ name: string;
1938
+ description?: string;
1939
+ steps: StepDefinition[];
1940
+ variables?: VariableDefinition[];
1941
+ }
1942
+ interface CreateWorkflowResponse {
1943
+ id: string;
1944
+ slug: string;
1945
+ name: string;
1946
+ version: number;
1947
+ }
1948
+ interface UpdateWorkflowRequest {
1949
+ id: string;
1950
+ projectSlug?: string;
1951
+ name?: string;
1952
+ description?: string;
1953
+ steps?: StepDefinition[];
1954
+ variables?: VariableDefinition[];
1955
+ isActive?: boolean;
1956
+ }
1957
+ interface GetWorkflowRequest {
1958
+ id?: string;
1959
+ slug?: string;
1960
+ projectSlug?: string;
1961
+ environment?: Environment;
1962
+ }
1963
+ interface ListWorkflowsRequest {
1964
+ projectSlug?: string;
1965
+ environment?: Environment;
1966
+ isActive?: boolean;
1967
+ limit?: number;
1968
+ cursor?: string;
1969
+ }
1970
+ interface ListWorkflowsResponse {
1971
+ items: Workflow[];
1972
+ nextCursor: string | null;
1973
+ }
1974
+ interface DeleteWorkflowRequest {
1975
+ id: string;
1976
+ projectSlug?: string;
1977
+ }
1978
+ interface WebhookConfig {
1979
+ url: string;
1980
+ secret?: string;
1981
+ }
1982
+ interface RunWorkflowRequest {
1983
+ workflowId?: string;
1984
+ workflowSlug?: string;
1985
+ projectSlug?: string;
1986
+ environment?: Environment;
1987
+ variables?: Record<string, unknown>;
1988
+ metadata?: Record<string, unknown>;
1989
+ webhook?: WebhookConfig;
1990
+ }
1991
+ interface RunWorkflowResponse {
1992
+ id: string;
1993
+ status: string;
1994
+ workflowId: string;
1995
+ }
1996
+ interface GetRunRequest {
1997
+ id: string;
1998
+ projectSlug?: string;
1999
+ environment?: Environment;
2000
+ }
2001
+ interface ListRunsRequest {
2002
+ workflowId?: string;
2003
+ workflowSlug?: string;
2004
+ projectSlug?: string;
2005
+ environment?: Environment;
2006
+ status?: RunStatus;
2007
+ limit?: number;
2008
+ cursor?: string;
2009
+ }
2010
+ interface ListRunsResponse {
2011
+ items: WorkflowRun[];
2012
+ nextCursor: string | null;
2013
+ }
2014
+ interface CancelRunRequest {
2015
+ id: string;
2016
+ projectSlug?: string;
2017
+ }
2018
+
2019
+ /**
2020
+ * Stack0 Workflows Client
2021
+ * AI workflow orchestration and execution
2022
+ */
2023
+
2024
+ declare class Workflows {
2025
+ private http;
2026
+ constructor(config: HttpClientConfig);
2027
+ /**
2028
+ * Create a new workflow
2029
+ *
2030
+ * @example
2031
+ * ```typescript
2032
+ * const workflow = await workflows.create({
2033
+ * slug: 'content-pipeline',
2034
+ * name: 'Content Generation Pipeline',
2035
+ * steps: [
2036
+ * {
2037
+ * id: 'generate',
2038
+ * name: 'Generate Content',
2039
+ * type: 'llm',
2040
+ * provider: 'anthropic',
2041
+ * model: 'claude-sonnet-4-20250514',
2042
+ * config: {
2043
+ * prompt: 'Write a blog post about {{topic}}',
2044
+ * maxTokens: 2000,
2045
+ * },
2046
+ * },
2047
+ * ],
2048
+ * variables: [
2049
+ * { name: 'topic', type: 'string', required: true },
2050
+ * ],
2051
+ * });
2052
+ * ```
2053
+ */
2054
+ create(request: CreateWorkflowRequest): Promise<CreateWorkflowResponse>;
2055
+ /**
2056
+ * Get a workflow by ID or slug
2057
+ *
2058
+ * @example
2059
+ * ```typescript
2060
+ * const workflow = await workflows.get({ slug: 'content-pipeline' });
2061
+ * console.log(workflow.steps);
2062
+ * ```
2063
+ */
2064
+ get(request: GetWorkflowRequest): Promise<Workflow>;
2065
+ /**
2066
+ * List workflows with pagination
2067
+ *
2068
+ * @example
2069
+ * ```typescript
2070
+ * const { items, nextCursor } = await workflows.list({
2071
+ * environment: 'production',
2072
+ * isActive: true,
2073
+ * limit: 20,
2074
+ * });
2075
+ * ```
2076
+ */
2077
+ list(request?: ListWorkflowsRequest): Promise<ListWorkflowsResponse>;
2078
+ /**
2079
+ * Update a workflow
2080
+ *
2081
+ * @example
2082
+ * ```typescript
2083
+ * await workflows.update({
2084
+ * id: 'workflow-id',
2085
+ * name: 'Updated Pipeline',
2086
+ * isActive: false,
2087
+ * });
2088
+ * ```
2089
+ */
2090
+ update(request: UpdateWorkflowRequest): Promise<{
2091
+ success: boolean;
2092
+ version: number;
2093
+ }>;
2094
+ /**
2095
+ * Delete a workflow
2096
+ *
2097
+ * @example
2098
+ * ```typescript
2099
+ * await workflows.delete({ id: 'workflow-id' });
2100
+ * ```
2101
+ */
2102
+ delete(request: DeleteWorkflowRequest): Promise<{
2103
+ success: boolean;
2104
+ }>;
2105
+ /**
2106
+ * Run a workflow
2107
+ *
2108
+ * @example
2109
+ * ```typescript
2110
+ * const run = await workflows.run({
2111
+ * workflowSlug: 'content-pipeline',
2112
+ * variables: {
2113
+ * topic: 'artificial intelligence',
2114
+ * },
2115
+ * webhook: {
2116
+ * url: 'https://example.com/webhook',
2117
+ * secret: 'webhook-secret',
2118
+ * },
2119
+ * });
2120
+ * console.log(run.id, run.status);
2121
+ * ```
2122
+ */
2123
+ run(request: RunWorkflowRequest): Promise<RunWorkflowResponse>;
2124
+ /**
2125
+ * Get a workflow run by ID
2126
+ *
2127
+ * @example
2128
+ * ```typescript
2129
+ * const run = await workflows.getRun({ id: 'run-id' });
2130
+ * if (run.status === 'completed') {
2131
+ * console.log(run.output);
2132
+ * }
2133
+ * ```
2134
+ */
2135
+ getRun(request: GetRunRequest): Promise<WorkflowRun>;
2136
+ /**
2137
+ * List workflow runs with pagination
2138
+ *
2139
+ * @example
2140
+ * ```typescript
2141
+ * const { items } = await workflows.listRuns({
2142
+ * workflowId: 'workflow-id',
2143
+ * status: 'completed',
2144
+ * });
2145
+ * ```
2146
+ */
2147
+ listRuns(request?: ListRunsRequest): Promise<ListRunsResponse>;
2148
+ /**
2149
+ * Cancel a running workflow
2150
+ *
2151
+ * @example
2152
+ * ```typescript
2153
+ * await workflows.cancelRun({ id: 'run-id' });
2154
+ * ```
2155
+ */
2156
+ cancelRun(request: CancelRunRequest): Promise<{
2157
+ success: boolean;
2158
+ }>;
2159
+ /**
2160
+ * Run a workflow and wait for completion
2161
+ *
2162
+ * @example
2163
+ * ```typescript
2164
+ * const run = await workflows.runAndWait({
2165
+ * workflowSlug: 'content-pipeline',
2166
+ * variables: { topic: 'AI' },
2167
+ * });
2168
+ * console.log(run.output);
2169
+ * ```
2170
+ */
2171
+ runAndWait(request: RunWorkflowRequest, options?: {
2172
+ pollInterval?: number;
2173
+ timeout?: number;
2174
+ }): Promise<WorkflowRun>;
2175
+ private convertDates;
2176
+ private convertRunDates;
2177
+ }
2178
+
2179
+ /**
2180
+ * Stack0 Memory SDK Types
2181
+ * Type definitions for the Memory API (agent memory management)
2182
+ */
2183
+
2184
+ type MemoryType = "preference" | "fact" | "event" | "relationship" | "instruction" | "pattern";
2185
+ interface AgentSettings {
2186
+ autoClassify?: boolean;
2187
+ autoExtractEntities?: boolean;
2188
+ embeddingModel?: string;
2189
+ }
2190
+ interface CreateAgentRequest {
2191
+ name: string;
2192
+ description?: string;
2193
+ settings?: AgentSettings;
2194
+ environment?: Environment$1;
2195
+ }
2196
+ interface Agent {
2197
+ id: string;
2198
+ organizationId: string;
2199
+ projectId?: string;
2200
+ name: string;
2201
+ description?: string;
2202
+ metadata?: Record<string, unknown>;
2203
+ environment: string;
2204
+ settings?: Record<string, unknown>;
2205
+ totalMemories: number;
2206
+ totalCollections: number;
2207
+ totalEntities: number;
2208
+ createdAt: string;
2209
+ updatedAt?: string;
2210
+ }
2211
+ interface UpdateAgentRequest {
2212
+ name?: string;
2213
+ description?: string;
2214
+ settings?: AgentSettings;
2215
+ environment?: Environment$1;
2216
+ }
2217
+ interface ListAgentsParams {
2218
+ environment?: string;
2219
+ }
2220
+ interface StoreMemoryRequest {
2221
+ agentId: string;
2222
+ content: string;
2223
+ collectionSlug?: string;
2224
+ type?: MemoryType;
2225
+ source?: string;
2226
+ tags?: string[];
2227
+ confidence?: number;
2228
+ metadata?: Record<string, unknown>;
2229
+ expiresAt?: string;
2230
+ }
2231
+ interface MemoryResponse {
2232
+ id: string;
2233
+ agentId: string;
2234
+ collectionId: string;
2235
+ content: string;
2236
+ type?: string;
2237
+ tier: string;
2238
+ source?: string;
2239
+ tags?: string[];
2240
+ confidence: number;
2241
+ metadata?: Record<string, unknown>;
2242
+ expiresAt?: string;
2243
+ compactedFrom?: string[];
2244
+ hasEmbedding?: boolean;
2245
+ createdAt: string;
2246
+ updatedAt?: string;
2247
+ }
2248
+ interface StoreBatchRequest {
2249
+ agentId: string;
2250
+ memories: Omit<StoreMemoryRequest, "agentId">[];
2251
+ }
2252
+ interface RecallRequest {
2253
+ agentId: string;
2254
+ query: string;
2255
+ collectionSlug?: string;
2256
+ limit?: number;
2257
+ types?: string[];
2258
+ tiers?: string[];
2259
+ minConfidence?: number;
2260
+ tags?: string[];
2261
+ }
2262
+ interface RecallResult extends MemoryResponse {
2263
+ score: number;
2264
+ similarityMethod?: "vector" | "keyword";
2265
+ }
2266
+ interface SearchRequest {
2267
+ agentId: string;
2268
+ query: string;
2269
+ collectionSlug?: string;
2270
+ limit?: number;
2271
+ offset?: number;
2272
+ }
2273
+ interface SearchResult {
2274
+ memories: MemoryResponse[];
2275
+ total: number;
2276
+ limit: number;
2277
+ offset: number;
2278
+ }
2279
+ interface ListMemoriesParams {
2280
+ agentId: string;
2281
+ collectionSlug?: string;
2282
+ type?: string;
2283
+ tier?: string;
2284
+ limit?: number;
2285
+ offset?: number;
2286
+ sortBy?: string;
2287
+ sortOrder?: "asc" | "desc";
2288
+ }
2289
+ interface UpdateMemoryRequest {
2290
+ content?: string;
2291
+ type?: string;
2292
+ tier?: string;
2293
+ tags?: string[];
2294
+ confidence?: number;
2295
+ metadata?: Record<string, unknown>;
2296
+ expiresAt?: string;
2297
+ }
2298
+ interface DeleteManyRequest {
2299
+ agentId: string;
2300
+ memoryIds: string[];
2301
+ }
2302
+ interface CreateCollectionRequest {
2303
+ agentId: string;
2304
+ name: string;
2305
+ slug: string;
2306
+ description?: string;
2307
+ compaction?: Record<string, unknown>;
2308
+ retention?: Record<string, unknown>;
2309
+ }
2310
+ interface CollectionResponse {
2311
+ id: string;
2312
+ agentId: string;
2313
+ slug: string;
2314
+ name?: string;
2315
+ description?: string;
2316
+ compaction?: Record<string, unknown>;
2317
+ retention?: Record<string, unknown>;
2318
+ lastCompactionAt?: string;
2319
+ nextCompactionAt?: string;
2320
+ createdAt: string;
2321
+ updatedAt?: string;
2322
+ }
2323
+ interface UpdateCollectionRequest {
2324
+ name?: string;
2325
+ description?: string;
2326
+ compaction?: Record<string, unknown>;
2327
+ retention?: Record<string, unknown>;
2328
+ }
2329
+ interface CollectionStats {
2330
+ collectionId: string;
2331
+ totalMemories: number;
2332
+ byTier: Record<string, number>;
2333
+ byType: Record<string, number>;
2334
+ oldestMemory?: string;
2335
+ newestMemory?: string;
2336
+ }
2337
+ interface CompactRequest {
2338
+ tier?: string;
2339
+ }
2340
+ interface CompactionJob {
2341
+ id: string;
2342
+ agentId: string;
2343
+ collectionId: string;
2344
+ status: string;
2345
+ tier: string;
2346
+ memoriesQueued: number;
2347
+ memoriesProcessed: number;
2348
+ memoriesCreated: number;
2349
+ memoriesArchived: number;
2350
+ durationMs?: number;
2351
+ creditsUsed?: number;
2352
+ error?: string;
2353
+ createdAt: string;
2354
+ completedAt?: string;
2355
+ }
2356
+ type EntityType = "person" | "organization" | "place" | "concept" | "product" | "event";
2357
+ interface Entity {
2358
+ id: string;
2359
+ agentId: string;
2360
+ name: string;
2361
+ type: EntityType;
2362
+ metadata?: Record<string, unknown>;
2363
+ firstSeenAt: string;
2364
+ lastSeenAt: string;
2365
+ mentionCount: number;
2366
+ createdAt: string;
2367
+ updatedAt?: string;
2368
+ }
2369
+ interface EntityRelation {
2370
+ id: string;
2371
+ agentId: string;
2372
+ sourceEntityId: string;
2373
+ targetEntityId: string;
2374
+ sourceEntity?: Entity;
2375
+ targetEntity?: Entity;
2376
+ relationType: string;
2377
+ strength: number;
2378
+ metadata?: Record<string, unknown>;
2379
+ createdAt: string;
2380
+ updatedAt?: string;
2381
+ }
2382
+ interface ListEntitiesParams {
2383
+ agentId: string;
2384
+ type?: EntityType;
2385
+ limit?: number;
2386
+ offset?: number;
2387
+ }
2388
+ interface GetEntityParams {
2389
+ entityId: string;
2390
+ }
2391
+ interface ListEntitiesResult {
2392
+ entities: Entity[];
2393
+ total: number;
2394
+ }
2395
+
2396
+ /**
2397
+ * Memory Agents client for Stack0 Memory API
2398
+ */
2399
+
2400
+ declare class MemoryAgents {
2401
+ private http;
2402
+ constructor(http: HttpClient);
2403
+ /**
2404
+ * Create a new memory agent
2405
+ */
2406
+ create(request: CreateAgentRequest): Promise<Agent>;
2407
+ /**
2408
+ * List all memory agents
2409
+ */
2410
+ list(params?: ListAgentsParams): Promise<Agent[]>;
2411
+ /**
2412
+ * Get a memory agent by ID
2413
+ */
2414
+ get(agentId: string): Promise<Agent>;
2415
+ /**
2416
+ * Update a memory agent
2417
+ */
2418
+ update(agentId: string, request: UpdateAgentRequest): Promise<Agent>;
2419
+ /**
2420
+ * Delete a memory agent
2421
+ */
2422
+ delete(agentId: string): Promise<void>;
2423
+ }
2424
+
2425
+ /**
2426
+ * Memory Collections client for Stack0 Memory API
2427
+ */
2428
+
2429
+ declare class MemoryCollections {
2430
+ private http;
2431
+ constructor(http: HttpClient);
2432
+ /**
2433
+ * Create a new collection for an agent
2434
+ */
2435
+ create(request: CreateCollectionRequest): Promise<CollectionResponse>;
2436
+ /**
2437
+ * List all collections for an agent
2438
+ */
2439
+ list(agentId: string): Promise<CollectionResponse[]>;
2440
+ /**
2441
+ * Get a collection by slug
2442
+ */
2443
+ get(agentId: string, collectionSlug: string): Promise<CollectionResponse>;
2444
+ /**
2445
+ * Update a collection
2446
+ */
2447
+ update(agentId: string, collectionSlug: string, request: UpdateCollectionRequest): Promise<CollectionResponse>;
2448
+ /**
2449
+ * Delete a collection
2450
+ */
2451
+ delete(agentId: string, collectionSlug: string): Promise<void>;
2452
+ /**
2453
+ * Get collection statistics
2454
+ */
2455
+ stats(agentId: string, collectionSlug: string): Promise<CollectionStats>;
2456
+ /**
2457
+ * Trigger compaction for a collection
2458
+ */
2459
+ compact(agentId: string, collectionSlug: string, request?: CompactRequest): Promise<CompactionJob>;
2460
+ /**
2461
+ * Get a compaction job by ID
2462
+ */
2463
+ getCompactionJob(agentId: string, collectionSlug: string, jobId: string): Promise<CompactionJob>;
2464
+ }
2465
+
2466
+ declare class MemoryEntities {
2467
+ private http;
2468
+ constructor(http: HttpClient);
2469
+ list(params: ListEntitiesParams): Promise<ListEntitiesResult>;
2470
+ get(entityId: string): Promise<Entity>;
2471
+ getRelations(entityId: string): Promise<EntityRelation[]>;
2472
+ }
2473
+
2474
+ /**
2475
+ * Stack0 Memory Client
2476
+ * Agent memory management with collections, recall, and compaction
2477
+ */
2478
+
2479
+ declare class Memory {
2480
+ private http;
2481
+ /** Manage memory agents */
2482
+ readonly agents: MemoryAgents;
2483
+ /** Manage memory collections */
2484
+ readonly collections: MemoryCollections;
2485
+ /** Manage extracted entities */
2486
+ readonly entities: MemoryEntities;
2487
+ constructor(config: HttpClientConfig);
2488
+ /**
2489
+ * Store a memory
2490
+ *
2491
+ * @example
2492
+ * ```typescript
2493
+ * const memory = await stack0.memory.store({
2494
+ * agentId: 'agent_123',
2495
+ * content: 'User prefers dark mode',
2496
+ * type: 'preference',
2497
+ * tags: ['ui', 'settings'],
2498
+ * });
2499
+ * ```
2500
+ */
2501
+ store(request: StoreMemoryRequest): Promise<MemoryResponse>;
2502
+ /**
2503
+ * Store multiple memories in a batch
2504
+ *
2505
+ * @example
2506
+ * ```typescript
2507
+ * const results = await stack0.memory.storeBatch({
2508
+ * agentId: 'agent_123',
2509
+ * memories: [
2510
+ * { content: 'User prefers dark mode', type: 'preference' },
2511
+ * { content: 'User is based in NYC', type: 'fact' },
2512
+ * ],
2513
+ * });
2514
+ * ```
2515
+ */
2516
+ storeBatch(request: StoreBatchRequest): Promise<MemoryResponse[]>;
2517
+ /**
2518
+ * Recall memories using semantic search (vector similarity)
2519
+ *
2520
+ * @example
2521
+ * ```typescript
2522
+ * const results = await stack0.memory.recall({
2523
+ * agentId: 'agent_123',
2524
+ * query: 'What are the user preferences?',
2525
+ * limit: 10,
2526
+ * });
2527
+ * ```
2528
+ */
2529
+ recall(request: RecallRequest): Promise<RecallResult[]>;
2530
+ /**
2531
+ * Search memories using full-text search
2532
+ *
2533
+ * @example
2534
+ * ```typescript
2535
+ * const results = await stack0.memory.search({
2536
+ * agentId: 'agent_123',
2537
+ * query: 'dark mode',
2538
+ * limit: 20,
2539
+ * });
2540
+ * ```
2541
+ */
2542
+ search(request: SearchRequest): Promise<SearchResult>;
2543
+ /**
2544
+ * Get a memory by ID
2545
+ */
2546
+ get(memoryId: string): Promise<MemoryResponse>;
2547
+ /**
2548
+ * List memories with optional filters
2549
+ *
2550
+ * @example
2551
+ * ```typescript
2552
+ * const memories = await stack0.memory.list({
2553
+ * agentId: 'agent_123',
2554
+ * type: 'preference',
2555
+ * limit: 50,
2556
+ * });
2557
+ * ```
2558
+ */
2559
+ list(params: ListMemoriesParams): Promise<MemoryResponse[]>;
2560
+ /**
2561
+ * Update a memory
2562
+ */
2563
+ update(memoryId: string, request: UpdateMemoryRequest): Promise<MemoryResponse>;
2564
+ /**
2565
+ * Delete a memory by ID
2566
+ */
2567
+ delete(memoryId: string): Promise<void>;
2568
+ /**
2569
+ * Delete multiple memories
2570
+ */
2571
+ deleteMany(request: DeleteManyRequest): Promise<void>;
2572
+ }
2573
+
1668
2574
  /**
1669
2575
  * Stack0 SDK
1670
2576
  * Official SDK for Stack0 services
@@ -1718,6 +2624,24 @@ declare class Marketing {
1718
2624
  * projectSlug: 'my-project',
1719
2625
  * environment: 'production',
1720
2626
  * });
2627
+ *
2628
+ * // Run an AI workflow
2629
+ * const run = await stack0.workflows.runAndWait({
2630
+ * workflowSlug: 'content-pipeline',
2631
+ * variables: { topic: 'AI trends' },
2632
+ * });
2633
+ * console.log(run.output);
2634
+ *
2635
+ * // Store and recall agent memories
2636
+ * await stack0.memory.store({
2637
+ * agentId: 'agent_123',
2638
+ * content: 'User prefers dark mode',
2639
+ * type: 'preference',
2640
+ * });
2641
+ * const memories = await stack0.memory.recall({
2642
+ * agentId: 'agent_123',
2643
+ * query: 'user preferences',
2644
+ * });
1721
2645
  * ```
1722
2646
  */
1723
2647
 
@@ -1735,12 +2659,14 @@ interface Stack0Config extends HttpClientConfig {
1735
2659
  * Provides access to all Stack0 services
1736
2660
  */
1737
2661
  declare class Stack0 {
1738
- mail: Mail;
2662
+ mail: Mail$1;
1739
2663
  cdn: CDN;
1740
2664
  screenshots: Screenshots;
1741
2665
  extraction: Extraction;
1742
2666
  integrations: Integrations;
1743
2667
  marketing: Marketing;
2668
+ workflows: Workflows;
2669
+ memory: Memory;
1744
2670
  /**
1745
2671
  * @deprecated Use `screenshots` and `extraction` instead. Will be removed in a future version.
1746
2672
  */
@@ -1748,4 +2674,4 @@ declare class Stack0 {
1748
2674
  constructor(config: Stack0Config);
1749
2675
  }
1750
2676
 
1751
- export { type AnalyticsOverviewRequest, type AnalyticsOverviewResponse, type ApprovalStatus, type ApproveContentRequest, type AssetJob, type AssetJobStatus, type AssetJobType, CDN, type CalendarEntry, type CancelAssetJobResponse, type CancelCalendarEntryResponse, type Channel, type CommunicationUser, type Company, type Connection, type Connector, type ConnectorCategory, type Contact, type Content, type ContentPerformanceItem, type ContentPerformanceRequest, type ContentPerformanceResponse, type ContentStatus, type ContentType, type CreateAssetJobRequest, type CreateCompanyInput, type CreateContactInput, type CreateContentRequest, type CreateDealInput, type CreateScriptRequest, type CreateScriptVersionRequest, type CurrentUsageResponse, type Deal, type DeleteScriptResponse, type DiscoverTrendsRequest, type DiscoverTrendsResponse, type DismissOpportunityRequest, Extraction, type GenerateOpportunitiesRequest, type GenerateOpportunitiesResponse, type GetCurrentUsageRequest, type GetSettingsRequest, type GetTotalUsageRequest, type GetUsageHistoryRequest, type Address as IntegrationAddress, type ColumnType as IntegrationColumnType, type CreateDocumentInput as IntegrationCreateDocumentInput, type CreateFolderInput as IntegrationCreateFolderInput, type CreateTableRowInput as IntegrationCreateTableRowInput, type Document as IntegrationDocument, type IntegrationEmailAddress, type File as IntegrationFile, type FilePermission as IntegrationFilePermission, type IntegrationFolder, type MessageAttachment as IntegrationMessageAttachment, type MessageReaction as IntegrationMessageReaction, type PhoneNumber as IntegrationPhoneNumber, type SelectOption as IntegrationSelectOption, type Table as IntegrationTable, type TableColumn as IntegrationTableColumn, type TableRow as IntegrationTableRow, type UpdateDocumentInput as IntegrationUpdateDocumentInput, type UpdateTableRowInput as IntegrationUpdateTableRowInput, Integrations, type ListOptions as IntegrationsListOptions, type PaginatedResult as IntegrationsPaginatedResult, type ListAssetJobsRequest, type ListAssetJobsResponse, type ListCalendarEntriesRequest, type ListCalendarEntriesResponse, type ListContentRequest, type ListContentResponse, type ListOpportunitiesRequest, type ListOpportunitiesResponse, type ListScriptsRequest, type ListScriptsResponse, type ListTrendsRequest, type ListTrendsResponse, Mail, type MarkPublishedRequest, Marketing, type MarketingEnvironment, type MarketingSettings, type MarketingUsage, type Message, type Opportunity, type OpportunityConversionRequest, type OpportunityConversionResponse, type PassthroughRequest, type RecordUsageRequest, type RejectContentRequest, type RetryAssetJobResponse, type ScheduleContentRequest, Screenshots, type Script, type ScriptSlide, type SendMessageInput, Stack0, type Stack0Config, type TotalUsageResponse, type Trend, type TrendAnalyticsRequest, type TrendAnalyticsResponse, type TrendStatus, type UpdateAssetJobStatusRequest, type UpdateCalendarEntryRequest, type UpdateCompanyInput, type UpdateContactInput, type UpdateContentRequest, type UpdateDealInput, type UpdateScriptRequest, type UpdateSettingsRequest, type UpdateSettingsResponse, type UpdateTrendStatusRequest, type UpdateTrendStatusResponse, type UploadFileInput, type UsageHistoryResponse, Webdata, Stack0 as default };
2677
+ export { type Agent, type AgentSettings, type AnalyticsOverviewRequest, type AnalyticsOverviewResponse, type ApprovalStatus, type ApproveContentRequest, type AssetJob, type AssetJobStatus, type AssetJobType, CDN, type Calendar, type CalendarAttendee, type CalendarEntry, type CalendarEvent, type CancelAssetJobResponse, type CancelCalendarEntryResponse, type CancelRunRequest, type Channel, type CollectionResponse, type CollectionStats, type CommunicationUser, type CompactRequest, type CompactionJob, type Company, type Connection, type Connector, type ConnectorCategory, type Contact, type Content, type ContentPerformanceItem, type ContentPerformanceRequest, type ContentPerformanceResponse, type ContentStatus, type ContentType, type CreateAgentRequest, type CreateAssetJobRequest, type CreateCalendarEventInput, type CreateCollectionRequest, type CreateCompanyInput, type CreateConnectionSessionRequest, type CreateConnectionSessionResponse, type CreateContactInput, type CreateContentRequest, type CreateDealInput, type CreateScriptRequest, type CreateScriptVersionRequest, type CreateWorkflowRequest, type CreateWorkflowResponse, type CurrentUsageResponse, type Deal, type DeleteManyRequest, type DeleteScriptResponse, type DeleteWorkflowRequest, type DiscoverTrendsRequest, type DiscoverTrendsResponse, type DismissOpportunityRequest, type EmailAttachment, type EmailLabel, type EmailMessage, type EmailThread, type Entity, type EntityRelation, type EntityType, type Environment, Extraction, type GenerateOpportunitiesRequest, type GenerateOpportunitiesResponse, type GetCurrentUsageRequest, type GetEntityParams, type GetRunRequest, type GetSettingsRequest, type GetTotalUsageRequest, type GetUsageHistoryRequest, type GetWorkflowRequest, type Address as IntegrationAddress, type ColumnType as IntegrationColumnType, type CreateDocumentInput as IntegrationCreateDocumentInput, type CreateFolderInput as IntegrationCreateFolderInput, type CreateTableRowInput as IntegrationCreateTableRowInput, type Document as IntegrationDocument, type IntegrationEmailAddress, type File as IntegrationFile, type FilePermission as IntegrationFilePermission, type IntegrationFolder, type MessageAttachment as IntegrationMessageAttachment, type MessageReaction as IntegrationMessageReaction, type PhoneNumber as IntegrationPhoneNumber, type SelectOption as IntegrationSelectOption, type SendEmailInput as IntegrationSendEmailInput, type Table as IntegrationTable, type TableColumn as IntegrationTableColumn, type TableRow as IntegrationTableRow, type UpdateDocumentInput as IntegrationUpdateDocumentInput, type UpdateTableRowInput as IntegrationUpdateTableRowInput, Integrations, type ListOptions as IntegrationsListOptions, type PaginatedResult as IntegrationsPaginatedResult, type ListAgentsParams, type ListAssetJobsRequest, type ListAssetJobsResponse, type ListCalendarEntriesRequest, type ListCalendarEntriesResponse, type ListContentRequest, type ListContentResponse, type ListEmailMessagesOptions, type ListEntitiesParams, type ListEntitiesResult, type ListEventsOptions, type ListMemoriesParams, type ListOpportunitiesRequest, type ListOpportunitiesResponse, type ListRunsRequest, type ListRunsResponse, type ListScriptsRequest, type ListScriptsResponse, type ListTrendsRequest, type ListTrendsResponse, type ListWorkflowsRequest, type ListWorkflowsResponse, Mail$1 as Mail, type MarkPublishedRequest, Marketing, type MarketingEnvironment, type MarketingSettings, type MarketingUsage, Memory, MemoryAgents, MemoryCollections, MemoryEntities, type MemoryResponse, type MemoryType, type Message, type Opportunity, type OpportunityConversionRequest, type OpportunityConversionResponse, type PassthroughRequest, type Provider, type RecallRequest, type RecallResult, type RecordUsageRequest, type RejectContentRequest, type ResponseFormat, type RetryAssetJobResponse, type RetryConfig, type RunStatus, type RunWorkflowRequest, type RunWorkflowResponse, type ScheduleContentRequest, Screenshots, type Script, type ScriptSlide, type SearchRequest, type SearchResult, type SendMessageInput, Stack0, type Stack0Config, type StepConfig, type StepDefinition, type StepRunStatus, type StepState, type StepType, type StoreBatchRequest, type StoreMemoryRequest, type TotalUsageResponse, type Trend, type TrendAnalyticsRequest, type TrendAnalyticsResponse, type TrendStatus, type UpdateAgentRequest, type UpdateAssetJobStatusRequest, type UpdateCalendarEntryRequest, type UpdateCalendarEventInput, type UpdateCollectionRequest, type UpdateCompanyInput, type UpdateContactInput, type UpdateContentRequest, type UpdateDealInput, type UpdateMemoryRequest, type UpdateScriptRequest, type UpdateSettingsRequest, type UpdateSettingsResponse, type UpdateTrendStatusRequest, type UpdateTrendStatusResponse, type UpdateWorkflowRequest, type UploadFileInput, type UsageHistoryResponse, type VariableDefinition, Webdata, type WebhookConfig, type Workflow, type WorkflowRun, Workflows, Stack0 as default };