import { IDataObject, IExecuteFunctions, IHookFunctions, ILoadOptionsFunctions, INodePropertyOptions, ICredentialDataDecryptedObject, ICredentialTestFunctions } from "n8n-workflow";
/**
 * Make an API request to Bitrix24 using OAuth2
 */
export declare function bitrix24OAuth2Request(this: IHookFunctions | IExecuteFunctions | ILoadOptionsFunctions, endpoint: string, body?: IDataObject, qs?: IDataObject, uri?: string, option?: IDataObject): Promise<any>;
/**
 * Make an API request using webhook URL
 */
export declare function bitrix24WebhookRequest(this: IHookFunctions | IExecuteFunctions | ILoadOptionsFunctions, endpoint: string, body?: IDataObject, qs?: IDataObject, option?: IDataObject): Promise<any>;
/**
 * Make an API request to Bitrix24 - tries OAuth2 first, then webhook if OAuth2 fails
 */
export declare function bitrix24Request(this: IHookFunctions | IExecuteFunctions | ILoadOptionsFunctions, endpoint: string, body?: IDataObject, qs?: IDataObject, uri?: string, option?: IDataObject): Promise<any>;
/**
 * Make an API request to load all items from paginated Bitrix24 API
 */
export declare function bitrix24ApiRequestAllItems(this: IExecuteFunctions | IHookFunctions | ILoadOptionsFunctions, propertyName: string, endpoint: string, body?: IDataObject, query?: IDataObject, uri?: string): Promise<any>;
/**
 * Download a file from a URL
 */
export declare function bitrix24DownloadFile(this: IExecuteFunctions | IHookFunctions | ILoadOptionsFunctions, downloadUrl: string): Promise<any>;
/**
 * Validate that the binary data field exists in the input
 */
export declare function validateBinaryDataExists(helpers: IExecuteFunctions["helpers"], item: any, binaryPropertyName: string): void;
/**
 * Test if credentials are valid
 */
export declare function testAuth(this: ICredentialTestFunctions, credential: ICredentialDataDecryptedObject): Promise<boolean>;
/**
 * Process and return full Bitrix24 API response
 * Unified handler for all response types
 */
export declare function returnFullBitrix24Response(responseData: any, helpers: IExecuteFunctions["helpers"], itemIndex: number): any;
/**
 * Load resource options for use in dropdown selectors
 */
export declare function getEntityFields(this: ILoadOptionsFunctions, entityType: string): Promise<INodePropertyOptions[]>;
