import * as web3 from "@solana/web3.js"; import { Honeycomb, Operation } from "@honeycomb-protocol/hive-control"; import { HplHolderAccount } from "../HplHolderAccount"; /** * Represents the arguments for creating an "Approve Delegate" operation. */ type CreateApproveDelegateOperationArgs = { amount: number; holderAccount: HplHolderAccount; delegate: web3.PublicKey; programId?: web3.PublicKey; }; /** * Creates an "Approve Delegate" operation for the given holder account, approving a delegate * to spend a certain amount of tokens on behalf of the holder account. * @category Operation Builders * @param honeycomb The Honeycomb instance. * @param args The arguments for creating the "Approve Delegate" operation. * @returns An object containing the "Approve Delegate" operation. * @example * const honeycomb = new Honeycomb(...); // Initialize Honeycomb instance * const holderAccount = ...; // HplHolderAccount instance * const delegatePublicKey = ...; // Delegate public key * const amountToApprove = 100; // Number of tokens to approve * * // Create an "Approve Delegate" operation for the holder account * const operationArgs: CreateApproveDelegateOperationArgs = { * amount: amountToApprove, * holderAccount, * delegate: delegatePublicKey, * }; * const { operation } = await createApproveDelegateOperation(honeycomb, operationArgs); * operation.send(); */ export declare function createApproveDelegateOperation(honeycomb: Honeycomb, args: CreateApproveDelegateOperationArgs): Promise<{ operation: Operation; }>; export {};