import type { ActivityFunction } from './interfaces';
import type { PayloadTypeInfo } from './type-info';
/**
* Static metadata attached to an Activity function.
*
* @experimental
*/
export interface ActivityDefinitionOptions {
/** Type information used to decode Activity arguments and encode its result. */
typeInfo?: PayloadTypeInfo;
}
type ActivityKeys = {
[K in keyof A & string]: A[K] extends ActivityFunction ? K : never;
}[keyof A & string];
/**
* Type information keyed only by Activity-valued properties of `A`.
*
* @experimental
*/
export type ActivityTypeInfoMap = Partial, PayloadTypeInfo>>;
/** @internal */
export interface ActivityFunctionWithOptions extends ActivityFunction {
activityDefinitionOptions: ActivityDefinitionOptions;
}
/** @internal */
export declare function isActivityFunctionWithOptions(value: unknown): value is ActivityFunctionWithOptions;
export {};