Coda by Ian Macalinao
    Preparing search index...
    interface WhirlpoolPluginInstructions {
        closeBundledPosition: (
            input: CloseBundledPositionInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                WritableAccount<string>,
                WritableAccount<string>,
                ReadonlyAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                WritableAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        closePosition: (
            input: ClosePositionInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                WritableAccount<string>,
                WritableAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        closePositionWithTokenExtensions: (
            input: ClosePositionWithTokenExtensionsInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                WritableAccount<string>,
                WritableAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        collectFees: (
            input: CollectFeesInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                ReadonlyAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                WritableAccount<string>,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        collectFeesV2: (
            input: CollectFeesV2Input,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                ReadonlyAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                WritableAccount<string>,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        collectProtocolFees: (
            input: CollectProtocolFeesInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                ReadonlyAccount<string>,
                WritableAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                WritableAccount<string>,
                WritableAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        collectProtocolFeesV2: (
            input: CollectProtocolFeesV2Input,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                ReadonlyAccount<string>,
                WritableAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                ReadonlyAccount<string>,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        collectReward: (
            input: CollectRewardInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                ReadonlyAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                WritableAccount<string>,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        collectRewardV2: (
            input: CollectRewardV2Input,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                ReadonlyAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                WritableAccount<string>,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        decreaseLiquidity: (
            input: DecreaseLiquidityInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                WritableAccount<string>,
                ReadonlyAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                WritableAccount<string>,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        decreaseLiquidityV2: (
            input: DecreaseLiquidityV2Input,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                WritableAccount<string>,
                ReadonlyAccount<string>,
                ReadonlyAccount<string>,
                ReadonlyAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                WritableAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        deletePositionBundle: (
            input: DeletePositionBundleInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                WritableAccount<string>,
                WritableAccount<string>,
                WritableAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                WritableAccount<string>,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        deleteTokenBadge: (
            input: DeleteTokenBadgeInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                ReadonlyAccount<string>,
                ReadonlyAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                ReadonlyAccount<string>,
                WritableAccount<string>,
                WritableAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        increaseLiquidity: (
            input: IncreaseLiquidityInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                WritableAccount<string>,
                ReadonlyAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                WritableAccount<string>,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        increaseLiquidityV2: (
            input: IncreaseLiquidityV2Input,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                WritableAccount<string>,
                ReadonlyAccount<string>,
                ReadonlyAccount<string>,
                ReadonlyAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                WritableAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        initializeConfig: (
            input: InitializeConfigInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        initializeConfigExtension: (
            input: InitializeConfigExtensionInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                ReadonlyAccount<string>,
                WritableAccount<string>,
                AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        initializeFeeTier: (
            input: InitializeFeeTierInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                ReadonlyAccount<string>,
                WritableAccount<string>,
                AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        initializePool: (
            input: InitializePoolInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                ReadonlyAccount<string>,
                ReadonlyAccount<string>,
                ReadonlyAccount<string>,
                AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                WritableAccount<string>,
                AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
            ],
        > & SelfPlanAndSendFunctions;
        initializePoolV2: (
            input: InitializePoolV2Input,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                ReadonlyAccount<string>,
                ReadonlyAccount<string>,
                ReadonlyAccount<string>,
                ReadonlyAccount<string>,
                ReadonlyAccount<string>,
                AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
            ],
        > & SelfPlanAndSendFunctions;
        initializePositionBundle: (
            input: InitializePositionBundleInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                WritableAccount<string>,
                AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                WritableAccount<string>,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        initializePositionBundleWithMetadata: (
            input: InitializePositionBundleWithMetadataInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                WritableAccount<string>,
                AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                WritableAccount<string>,
                WritableAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        initializeReward: (
            input: InitializeRewardInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                WritableAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        initializeRewardV2: (
            input: InitializeRewardV2Input,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                WritableAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        initializeTickArray: (
            input: InitializeTickArrayInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                ReadonlyAccount<string>,
                AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                WritableAccount<string>,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        initializeTokenBadge: (
            input: InitializeTokenBadgeInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                ReadonlyAccount<string>,
                ReadonlyAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                ReadonlyAccount<string>,
                WritableAccount<string>,
                AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        lockPosition: (
            input: LockPositionInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        openBundledPosition: (
            input: OpenBundledPositionInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                WritableAccount<string>,
                WritableAccount<string>,
                ReadonlyAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                ReadonlyAccount<string>,
                AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                ReadonlyAccount<string>,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        openPosition: (
            input: OpenPositionInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                ReadonlyAccount<string>,
                WritableAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        openPositionWithMetadata: (
            input: OpenPositionWithMetadataInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                ReadonlyAccount<string>,
                WritableAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        openPositionWithTokenExtensions: (
            input: OpenPositionWithTokenExtensionsInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                ReadonlyAccount<string>,
                WritableAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        setCollectProtocolFeesAuthority: (
            input: SetCollectProtocolFeesAuthorityInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                WritableAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        setConfigExtensionAuthority: (
            input: SetConfigExtensionAuthorityInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                ReadonlyAccount<string>,
                WritableAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        setDefaultFeeRate: (
            input: SetDefaultFeeRateInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                ReadonlyAccount<string>,
                WritableAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
            ],
        > & SelfPlanAndSendFunctions;
        setDefaultProtocolFeeRate: (
            input: SetDefaultProtocolFeeRateInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                WritableAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
            ],
        > & SelfPlanAndSendFunctions;
        setFeeAuthority: (
            input: SetFeeAuthorityInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                WritableAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        setFeeRate: (
            input: SetFeeRateInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                ReadonlyAccount<string>,
                WritableAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
            ],
        > & SelfPlanAndSendFunctions;
        setProtocolFeeRate: (
            input: SetProtocolFeeRateInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                ReadonlyAccount<string>,
                WritableAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
            ],
        > & SelfPlanAndSendFunctions;
        setRewardAuthority: (
            input: SetRewardAuthorityInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                WritableAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        setRewardAuthorityBySuperAuthority: (
            input: SetRewardAuthorityBySuperAuthorityInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                ReadonlyAccount<string>,
                WritableAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        setRewardEmissions: (
            input: SetRewardEmissionsInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                WritableAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        setRewardEmissionsSuperAuthority: (
            input: SetRewardEmissionsSuperAuthorityInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                WritableAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        setRewardEmissionsV2: (
            input: SetRewardEmissionsV2Input,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                WritableAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        setTokenBadgeAuthority: (
            input: SetTokenBadgeAuthorityInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                ReadonlyAccount<string>,
                WritableAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        swap: (
            input: SwapInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                ReadonlyAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                WritableAccount<string>,
                WritableAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        swapV2: (
            input: SwapV2Input,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                ReadonlyAccount<string>,
                ReadonlyAccount<string>,
                ReadonlyAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                WritableAccount<string>,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        twoHopSwap: (
            input: TwoHopSwapInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                ReadonlyAccount<string>,
                AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                    string,
                    TransactionSigner<string>,
                >,
                WritableAccount<string>,
                WritableAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        twoHopSwapV2: (
            input: TwoHopSwapV2Input,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                WritableAccount<string>,
                WritableAccount<string>,
                ReadonlyAccount<string>,
                ReadonlyAccount<string>,
                ReadonlyAccount<string>,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
        updateFeesAndRewards: (
            input: UpdateFeesAndRewardsInput,
        ) => Instruction<
            Address,
            readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
        > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
            [
                WritableAccount<string>,
                WritableAccount<string>,
                ReadonlyAccount<string>,
                ReadonlyAccount<string>,
            ],
        > & SelfPlanAndSendFunctions;
    }
    Index

    Properties

    closeBundledPosition: (
        input: CloseBundledPositionInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            WritableAccount<string>,
            WritableAccount<string>,
            ReadonlyAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            WritableAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    closePosition: (
        input: ClosePositionInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            WritableAccount<string>,
            WritableAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    closePositionWithTokenExtensions: (
        input: ClosePositionWithTokenExtensionsInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            WritableAccount<string>,
            WritableAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    collectFees: (
        input: CollectFeesInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            ReadonlyAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            WritableAccount<string>,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    collectFeesV2: (
        input: CollectFeesV2Input,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            ReadonlyAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            WritableAccount<string>,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    collectProtocolFees: (
        input: CollectProtocolFeesInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            ReadonlyAccount<string>,
            WritableAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            WritableAccount<string>,
            WritableAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    collectProtocolFeesV2: (
        input: CollectProtocolFeesV2Input,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            ReadonlyAccount<string>,
            WritableAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            ReadonlyAccount<string>,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    collectReward: (
        input: CollectRewardInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            ReadonlyAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            WritableAccount<string>,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    collectRewardV2: (
        input: CollectRewardV2Input,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            ReadonlyAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            WritableAccount<string>,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    decreaseLiquidity: (
        input: DecreaseLiquidityInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            WritableAccount<string>,
            ReadonlyAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            WritableAccount<string>,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    decreaseLiquidityV2: (
        input: DecreaseLiquidityV2Input,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            WritableAccount<string>,
            ReadonlyAccount<string>,
            ReadonlyAccount<string>,
            ReadonlyAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            WritableAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    deletePositionBundle: (
        input: DeletePositionBundleInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            WritableAccount<string>,
            WritableAccount<string>,
            WritableAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            WritableAccount<string>,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    deleteTokenBadge: (
        input: DeleteTokenBadgeInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            ReadonlyAccount<string>,
            ReadonlyAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            ReadonlyAccount<string>,
            WritableAccount<string>,
            WritableAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    increaseLiquidity: (
        input: IncreaseLiquidityInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            WritableAccount<string>,
            ReadonlyAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            WritableAccount<string>,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    increaseLiquidityV2: (
        input: IncreaseLiquidityV2Input,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            WritableAccount<string>,
            ReadonlyAccount<string>,
            ReadonlyAccount<string>,
            ReadonlyAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            WritableAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    initializeConfig: (
        input: InitializeConfigInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    initializeConfigExtension: (
        input: InitializeConfigExtensionInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            ReadonlyAccount<string>,
            WritableAccount<string>,
            AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    initializeFeeTier: (
        input: InitializeFeeTierInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            ReadonlyAccount<string>,
            WritableAccount<string>,
            AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    initializePool: (
        input: InitializePoolInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            ReadonlyAccount<string>,
            ReadonlyAccount<string>,
            ReadonlyAccount<string>,
            AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            WritableAccount<string>,
            AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
        ],
    > & SelfPlanAndSendFunctions
    initializePoolV2: (
        input: InitializePoolV2Input,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            ReadonlyAccount<string>,
            ReadonlyAccount<string>,
            ReadonlyAccount<string>,
            ReadonlyAccount<string>,
            ReadonlyAccount<string>,
            AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
        ],
    > & SelfPlanAndSendFunctions
    initializePositionBundle: (
        input: InitializePositionBundleInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            WritableAccount<string>,
            AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            WritableAccount<string>,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    initializePositionBundleWithMetadata: (
        input: InitializePositionBundleWithMetadataInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            WritableAccount<string>,
            AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            WritableAccount<string>,
            WritableAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    initializeReward: (
        input: InitializeRewardInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            WritableAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    initializeRewardV2: (
        input: InitializeRewardV2Input,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            WritableAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    initializeTickArray: (
        input: InitializeTickArrayInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            ReadonlyAccount<string>,
            AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            WritableAccount<string>,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    initializeTokenBadge: (
        input: InitializeTokenBadgeInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            ReadonlyAccount<string>,
            ReadonlyAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            ReadonlyAccount<string>,
            WritableAccount<string>,
            AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    lockPosition: (
        input: LockPositionInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    openBundledPosition: (
        input: OpenBundledPositionInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            WritableAccount<string>,
            WritableAccount<string>,
            ReadonlyAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            ReadonlyAccount<string>,
            AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            ReadonlyAccount<string>,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    openPosition: (
        input: OpenPositionInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            ReadonlyAccount<string>,
            WritableAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    openPositionWithMetadata: (
        input: OpenPositionWithMetadataInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            ReadonlyAccount<string>,
            WritableAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    openPositionWithTokenExtensions: (
        input: OpenPositionWithTokenExtensionsInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            AccountMeta<string> & { role: WRITABLE_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            ReadonlyAccount<string>,
            WritableAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    setCollectProtocolFeesAuthority: (
        input: SetCollectProtocolFeesAuthorityInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            WritableAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    setConfigExtensionAuthority: (
        input: SetConfigExtensionAuthorityInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            ReadonlyAccount<string>,
            WritableAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    setDefaultFeeRate: (
        input: SetDefaultFeeRateInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            ReadonlyAccount<string>,
            WritableAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
        ],
    > & SelfPlanAndSendFunctions
    setDefaultProtocolFeeRate: (
        input: SetDefaultProtocolFeeRateInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            WritableAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
        ],
    > & SelfPlanAndSendFunctions
    setFeeAuthority: (
        input: SetFeeAuthorityInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            WritableAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    setFeeRate: (
        input: SetFeeRateInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            ReadonlyAccount<string>,
            WritableAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
        ],
    > & SelfPlanAndSendFunctions
    setProtocolFeeRate: (
        input: SetProtocolFeeRateInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            ReadonlyAccount<string>,
            WritableAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
        ],
    > & SelfPlanAndSendFunctions
    setRewardAuthority: (
        input: SetRewardAuthorityInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            WritableAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    setRewardAuthorityBySuperAuthority: (
        input: SetRewardAuthorityBySuperAuthorityInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            ReadonlyAccount<string>,
            WritableAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    setRewardEmissions: (
        input: SetRewardEmissionsInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            WritableAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    setRewardEmissionsSuperAuthority: (
        input: SetRewardEmissionsSuperAuthorityInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            WritableAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    setRewardEmissionsV2: (
        input: SetRewardEmissionsV2Input,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            WritableAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    setTokenBadgeAuthority: (
        input: SetTokenBadgeAuthorityInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            ReadonlyAccount<string>,
            WritableAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    swap: (
        input: SwapInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            ReadonlyAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            WritableAccount<string>,
            WritableAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    swapV2: (
        input: SwapV2Input,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            ReadonlyAccount<string>,
            ReadonlyAccount<string>,
            ReadonlyAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            WritableAccount<string>,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    twoHopSwap: (
        input: TwoHopSwapInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            ReadonlyAccount<string>,
            AccountMeta<string> & { role: READONLY_SIGNER } & AccountSignerMeta<
                string,
                TransactionSigner<string>,
            >,
            WritableAccount<string>,
            WritableAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    twoHopSwapV2: (
        input: TwoHopSwapV2Input,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            WritableAccount<string>,
            WritableAccount<string>,
            ReadonlyAccount<string>,
            ReadonlyAccount<string>,
            ReadonlyAccount<string>,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions
    updateFeesAndRewards: (
        input: UpdateFeesAndRewardsInput,
    ) => Instruction<
        Address,
        readonly (AccountMeta<string> | AccountLookupMeta<string, string>)[],
    > & InstructionWithData<ReadonlyUint8Array<ArrayBufferLike>> & InstructionWithAccounts<
        [
            WritableAccount<string>,
            WritableAccount<string>,
            ReadonlyAccount<string>,
            ReadonlyAccount<string>,
        ],
    > & SelfPlanAndSendFunctions