import type { TokenAmount, TokenInfo } from "./types.js"; import { address } from "@solana/kit"; import { createTokenAmount } from "./create-token-amount.js"; /** * SVG icon for native SOL */ const NATIVE_SOL_SVG = ` `; /** * Data URI for native SOL icon */ const NATIVE_SOL_ICON_URL = `data:image/svg+xml,${encodeURIComponent(NATIVE_SOL_SVG)}`; /** * TokenInfo for native SOL */ export const NATIVE_SOL: TokenInfo<"11111111111111111111111111111111", 9> = { mint: address("11111111111111111111111111111111"), name: "Solana", symbol: "SOL", decimals: 9, iconURL: NATIVE_SOL_ICON_URL, }; /** * Creates a TokenAmount representing lamports (native SOL). * * @param lamports - The amount in lamports (1 SOL = 1,000,000,000 lamports) * @returns A TokenAmount for native SOL */ export function createLamports( lamports: bigint, ): TokenAmount<"11111111111111111111111111111111", 9> { return createTokenAmount(NATIVE_SOL, lamports); }