import { Address, IAccountMeta, IInstruction, TransactionSigner } from "@solana/kit";
export interface RefreshPythLazerPriceArgs {
    tokens: Array<number>;
    serializedPythMessage: Uint8Array;
    ed25519InstructionIndex: number;
}
export interface RefreshPythLazerPriceAccounts {
    /** The account that signs the transaction. */
    user: TransactionSigner;
    oraclePrices: Address;
    oracleMappings: Address;
    oracleTwaps: Address;
    pythProgram: Address;
    pythStorage: Address;
    pythTreasury: Address;
    systemProgram: Address;
    instructionsSysvar: Address;
}
export declare const layout: import("buffer-layout").Layout<unknown>;
/**
 * IMPORTANT: we assume the tokens passed in to this ix are in the same order in which
 * they are found in the message payload. Thus, we rely on the client to do this work
 */
export declare function refreshPythLazerPrice(args: RefreshPythLazerPriceArgs, accounts: RefreshPythLazerPriceAccounts, programAddress?: Address): IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>;
//# sourceMappingURL=refreshPythLazerPrice.d.ts.map