import { Api as ApiPb, Trigger_Job, Trigger_Workflow } from '@superblocksteam/types'; import { Metadata, UserType as ProtoUserType } from '@superblocksteam/types'; import { Param } from '../common/param.js'; import { DatasourceEnvironments } from '../datasource/index.js'; import { IntegrationDto } from '../integration/index.js'; import { EntityProfileSettings } from '../profile/index.js'; import { IResourceMetadata } from '../resource/index.js'; import { Action, ActionId } from './action.js'; import { ExecutionParam } from './execution.js'; import { Global } from './global.js'; import { ScheduleState } from './schedule.js'; export type ApiNotificationConfiguration = { onSuccess?: { enabled?: boolean; customText?: string; }; onError?: { enabled?: boolean; includeError?: boolean; customText?: string; customDescription?: string; }; }; export interface Api { id: string; environment: DatasourceEnvironments; profile: string; applicationId?: string | null; apiPb?: ApiPb; triggerType: ApiTriggerType; } export type ApiDetails = { name: string; triggerActionId: ActionId; actions: { [key: string]: Action; }; executeOnPageLoad?: boolean; notificationConfig?: ApiNotificationConfiguration; bindings?: string[]; dynamicBindingPathList?: Param[]; version?: string; deactivated?: Date; created?: Date; updated?: Date; supportedMethod?: 'GET' | 'POST'; workflowParams?: ExecutionParam[]; }; export type ApiDefinition = { api: Api; orgApiKey: string; organizationId: string; global: Global; locationContext?: ApiLocationContext; metadata?: ApiDefinitionMetadata; }; export type ApiLocationContext = { applicationId: string; pageId?: string; }; type ApiDefinitionMetadata = { requester: string; requesterType?: ProtoUserType; organizationName?: string; }; export declare enum ApiTriggerType { UI = 0, WORKFLOW = 1, SCHEDULE = 2 } export declare enum ApiTriggerTypeQuery { UI = "ui", WORKFLOW = "workflow", SCHEDULE = "schedule" } export declare function apiTriggerTypeQueryToType(trigger: ApiTriggerTypeQuery): ApiTriggerType; export interface IApiV3Dto { id: string; name: string; applicationId?: string | null; pageId?: string | null; organizationId: string; apiPb?: ApiPb; triggerType: ApiTriggerType; updated: number | Date; canDelete?: boolean; scheduleState?: ScheduleState; folderId?: string | null; isDeployed?: boolean; deployedCommitId?: string; sendEmailOnFailure?: boolean; integrations?: Record; creator?: { id: string; name: string; }; settings?: ApiSettings; repoConnection?: { created: Date; } | null; restricted?: boolean; } export interface IHomepageApiV3Dto extends IResourceMetadata { triggerType?: ApiTriggerType; scheduleState?: ScheduleState; creator?: { id: string; name: string; email: string; }; } type protoMethods = 'equals' | 'clone' | 'fromBinary' | 'fromJson' | 'fromJsonString' | 'toBinary' | 'toJson' | 'toJsonString' | 'getType'; export declare const EXPORTED_METADATA_EXCLUDED_FIELDS: readonly ["description", "folder", "tags", "timestamps", "version"]; type ExcludedFields = (typeof EXPORTED_METADATA_EXCLUDED_FIELDS)[number]; type ExportedApiPbMetadata = Omit; export type ApiPbTrigger = { workflow?: Trigger_Workflow; job?: Trigger_Job; }; export type ExportedApiPbTrigger = { workflow?: Omit; job?: Omit; }; export type ExportedApiPb = Omit & { metadata: ExportedApiPbMetadata; trigger: ExportedApiPbTrigger | undefined; }; export type ExportedApiV3Dto = Omit & { apiPb?: ExportedApiPb; }; export type ApiSettings = EntityProfileSettings; export { ViewMode as OrchestratorViewMode } from '@superblocksteam/types'; export * from './action.js'; export * from './resolvedActionProp.js'; export * from './schedule.js'; export * from './execution.js'; export * from './global.js'; export * from './control-flow.js'; //# sourceMappingURL=index.d.ts.map