/**
* This file was automatically generated by @cosmwasm/ts-codegen@1.14.0.
* DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
* and run the @cosmwasm/ts-codegen generate command to regenerate this file.
*/
export type Uint128 = string;
export interface ConfigResponse {
admin: string;
alpha: number;
beta: number;
core_contract: string;
estimated_gas_cost_uboot: Uint128;
fee_bucket_duration: number;
fee_num_buckets: number;
genesis_time: number;
max_proof_age: number;
min_difficulty: number;
paused: boolean;
pid_interval: number;
refer_contract: string;
stake_contract: string;
token_contract: string;
warmup_base_rate: Uint128;
window_size: number;
}
export interface EmissionInfoResponse {
alpha: number;
beta: number;
emission_rate: Uint128;
gross_rate: Uint128;
mining_rate: Uint128;
staking_rate: Uint128;
windowed_fees: Uint128;
}
export type ExecuteMsg = {
submit_proof: {
challenge: string;
difficulty: number;
hash: string;
miner_address: string;
nonce: number;
referrer?: string | null;
timestamp: number;
};
} | {
accrue_fees: {
amount: Uint128;
};
} | {
update_config: {
admin?: string | null;
core_contract?: string | null;
estimated_gas_cost_uboot?: Uint128 | null;
genesis_time?: number | null;
max_proof_age?: number | null;
min_difficulty?: number | null;
pid_interval?: number | null;
refer_contract?: string | null;
stake_contract?: string | null;
warmup_base_rate?: Uint128 | null;
};
} | {
apply_testing_overrides: {
overrides: TestingOverrides;
};
} | {
reset_state: {
genesis_time?: number | null;
};
} | {
pause: {};
} | {
unpause: {};
};
export interface TestingOverrides {
max_proof_age?: number | null;
min_difficulty?: number | null;
override_windowed_fees?: Uint128 | null;
pid_alpha?: number | null;
pid_beta?: number | null;
stats_total_proofs?: number | null;
stats_total_rewards?: Uint128 | null;
window_count?: number | null;
window_total_d?: number | null;
}
export interface InstantiateMsg {
admin?: string | null;
core_contract: string;
estimated_gas_cost_uboot?: Uint128 | null;
fee_bucket_duration?: number | null;
fee_num_buckets?: number | null;
genesis_time?: number | null;
max_proof_age: number;
min_difficulty?: number | null;
pid_interval?: number | null;
refer_contract: string;
stake_contract: string;
token_contract: string;
warmup_base_rate: Uint128;
window_size?: number | null;
}
export interface MinerStatsResponse {
address: string;
last_proof_time: number;
proofs_submitted: number;
total_rewards: Uint128;
}
export type QueryMsg = {
config: {};
} | {
window_status: {};
} | {
stats: {};
} | {
miner_stats: {
address: string;
};
} | {
calculate_reward: {
difficulty_bits: number;
};
} | {
emission_info: {};
};
export interface RewardCalculationResponse {
earns_reward: boolean;
estimated_gas_cost_uboot: Uint128;
gross_reward: Uint128;
}
export interface StatsResponse {
avg_difficulty: number;
total_proofs: number;
total_rewards: Uint128;
unique_miners: number;
}
export interface WindowStatusResponse {
alpha: string;
base_rate: Uint128;
beta: string;
proof_count: number;
window_d_rate: string;
window_entries: number;
window_size: number;
}