airdrop-api 0.1.0

Mint and Airdrop Framework on Solana for Sovereign Individuals
Documentation
use solana_program::pubkey::Pubkey;
use steel::*;

/// Allocation account stores individual recipient allocation (for on-chain mode)
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq, Pod, Zeroable)]
pub struct Allocation {
    /// Campaign this allocation belongs to
    pub campaign: Pubkey,

    /// Recipient wallet address
    pub recipient: Pubkey,

    /// Amount of tokens allocated
    pub amount: u64,

    /// Allocation timestamp
    pub allocated_at: i64,

    /// Claim timestamp (0 if not claimed)
    pub claimed_at: i64,

    /// Whether this allocation has been claimed (0=unclaimed, 1=claimed)
    pub claimed: u8,

    /// Padding for alignment
    pub _padding: [u8; 7],
}

use crate::consts::AirdropAccount;
account!(AirdropAccount, Allocation);