UNPKG

@prismatic-io/spectral

Version:

Utility library for building Prismatic connectors and code-native integrations

36 lines (35 loc) 4.14 kB
import type { ActionContext, ComponentRegistry, ConfigVarResultCollection, ErrorHandler, Inputs, PollingContext, PollingTriggerDefinition, PollingTriggerPerformFunction, TriggerPayload, TriggerPerformFunction, TriggerReference, TriggerResult } from "../types"; import type { ComponentReference as ServerComponentReference } from "./integration"; import type { CNIPollingPerformFunction, ComponentRefTriggerPerformFunction } from "./triggerTypes"; export type PerformFn = (...args: any[]) => Promise<any>; interface CreatePollingContext { context: ActionContext; invokeAction: PollingContext["polling"]["invokeAction"]; } export declare const createPollingContext: ({ context, invokeAction, }: CreatePollingContext) => Pick<PollingContext, "polling">; export type CleanFn = (...args: any[]) => any; export type InputCleaners = Record<string, CleanFn | undefined>; interface CreatePerformProps { inputCleaners: InputCleaners; errorHandler?: ErrorHandler; } export declare const cleanParams: (params: Record<string, unknown>, cleaners: InputCleaners) => Record<string, unknown>; export declare const createPerform: (performFn: PerformFn, { inputCleaners, errorHandler }: CreatePerformProps) => PerformFn; export declare const createPollingPerform: <TInputs extends Inputs, TActionInputs extends Inputs, TConfigVars extends ConfigVarResultCollection = ConfigVarResultCollection, TPayload extends TriggerPayload = TriggerPayload, TAllowsBranching extends boolean = boolean, TResult extends TriggerResult<TAllowsBranching, TPayload> = TriggerResult<TAllowsBranching, TPayload>>(trigger: PollingTriggerDefinition<any, ConfigVarResultCollection, TriggerPayload, boolean, any, any>, { inputCleaners, errorHandler }: CreatePerformProps) => PollingTriggerPerformFunction<TInputs, TActionInputs, TConfigVars, TPayload, TAllowsBranching, TResult>; type CreateCNIPollingPerform<TInputs extends Inputs, TActionInputs extends Inputs, TConfigVars extends ConfigVarResultCollection = ConfigVarResultCollection, TPayload extends TriggerPayload = TriggerPayload, TAllowsBranching extends boolean = boolean, TResult extends TriggerResult<TAllowsBranching, TPayload> = TriggerResult<TAllowsBranching, TPayload>> = { componentRegistry: ComponentRegistry; onTrigger: PollingTriggerPerformFunction<TInputs, TActionInputs, TConfigVars, TPayload, TAllowsBranching, TResult>; }; export declare const createCNIPollingPerform: <TInputs extends Inputs, TActionInputs extends Inputs, TConfigVars extends ConfigVarResultCollection = ConfigVarResultCollection, TPayload extends TriggerPayload = TriggerPayload, TAllowsBranching extends boolean = boolean, TResult extends TriggerResult<TAllowsBranching, TPayload> = TriggerResult<TAllowsBranching, TPayload>>({ onTrigger, componentRegistry, }: CreateCNIPollingPerform<TInputs, TActionInputs, TConfigVars, TPayload, TAllowsBranching, TResult>) => CNIPollingPerformFunction<TInputs, TConfigVars, TPayload, TAllowsBranching>; interface CreateCNIComponentRefPerform { componentRef: ServerComponentReference; componentRegistry: ComponentRegistry; onTrigger: TriggerReference; } export declare const createCNIComponentRefPerform: <TInputs extends Inputs, TConfigVars extends ConfigVarResultCollection>({ componentRegistry, componentRef, onTrigger, }: CreateCNIComponentRefPerform) => ComponentRefTriggerPerformFunction<TInputs, TConfigVars>; interface CreateCNIPerform<TInputs extends Inputs, TConfigVars extends ConfigVarResultCollection, TAllowsBranching extends boolean | undefined, TResult extends TriggerResult<TAllowsBranching, TriggerPayload>> { componentRegistry: ComponentRegistry; onTrigger: TriggerPerformFunction<TInputs, TConfigVars, TAllowsBranching, TResult>; } export declare const createCNIPerform: <TInputs extends Inputs, TConfigVars extends ConfigVarResultCollection, TAllowsBranching extends boolean | undefined, TResult extends TriggerResult<TAllowsBranching, TriggerPayload>>({ componentRegistry, onTrigger, }: CreateCNIPerform<TInputs, TConfigVars, TAllowsBranching, TResult>) => TriggerPerformFunction<TInputs, TConfigVars, TAllowsBranching, TResult>; export {};