use soroban_sdk::{contractclient, Address, Env};
#[contractclient(name = "FeeHandlerClient")]
pub trait FeeHandlerInterface {
fn process_fee(env: &Env, client_contract: Address) -> bool;
fn set_fees_offline(env: &Env, status: bool);
fn is_fees_offline(env: &Env) -> bool;
fn set_custom_source_fee(env: &Env, client_contract: Address, amount: u64);
fn get_source_fee(env: &Env, client_contract: Address) -> u64;
fn set_max_fee(env: &Env, client_contract: Address, amount: u64);
fn get_max_fee(env: &Env, client_contract: Address) -> u64;
fn set_fee_token_contract(env: &Env, client_contract: Address, contract: Address);
fn get_fee_token_contract(env: &Env, client_contract: Address) -> Address;
}