import { type BlueprintBaseFunctionResource, type BlueprintDocumentFunctionResource, type BlueprintDocumentFunctionResourceEvent, type BlueprintMediaLibraryAssetFunctionResource, type BlueprintMediaLibraryFunctionResourceEvent } from '../index.js';
interface RequiredFunctionProperties {
    name: string;
}
export declare function defineDocumentFunction(functionConfig: Partial<BlueprintDocumentFunctionResource> & RequiredFunctionProperties): BlueprintDocumentFunctionResource;
/** @deprecated Define event properties under the 'event' key instead of specifying them at the top level */
export declare function defineDocumentFunction(functionConfig: Partial<BlueprintDocumentFunctionResource> & RequiredFunctionProperties & Partial<BlueprintDocumentFunctionResourceEvent>): BlueprintDocumentFunctionResource;
export declare function defineMediaLibraryAssetFunction(functionConfig: Partial<BlueprintMediaLibraryAssetFunctionResource> & RequiredFunctionProperties & Pick<BlueprintMediaLibraryAssetFunctionResource, 'event'> & Partial<BlueprintMediaLibraryFunctionResourceEvent>): BlueprintMediaLibraryAssetFunctionResource;
export declare function defineFunction(functionConfig: Partial<BlueprintBaseFunctionResource> & RequiredFunctionProperties, options?: {
    skipValidation?: boolean;
}): BlueprintBaseFunctionResource;
export {};
