UNPKG

@flaunch/sdk

Version:

Flaunch SDK to easily interact with the Flaunch protocol

50 lines 2.64 kB
import { type Address, type Drift, type HexString, type ReadContract, type ReadWriteAdapter, type ReadWriteContract } from "@delvtech/drift"; import { DynamicAddressFeeSplitManagerAbi } from "../abi/DynamicAddressFeeSplitManager"; import type { FlaunchToken } from "./TreasuryManagerClient"; export type DynamicAddressFeeSplitManagerABI = typeof DynamicAddressFeeSplitManagerAbi; export type RecipientShare = { recipient: Address; share: bigint; }; export type DynamicRecipientInfo = { share: bigint; debtPerShare: bigint; snapshotBalance: bigint; claimed: bigint; }; export declare class ReadDynamicAddressFeeSplitManager { readonly contract: ReadContract<DynamicAddressFeeSplitManagerABI>; constructor(address: Address, drift?: Drift); permissions(): Promise<`0x${string}`>; managerOwner(): Promise<`0x${string}`>; moderator(): Promise<`0x${string}`>; creatorShare(): Promise<bigint>; ownerShare(): Promise<bigint>; totalActiveShares(): Promise<bigint>; accumulatorPerShare(): Promise<bigint>; lastProcessedManagerFees(): Promise<bigint>; recipientCount(): Promise<bigint>; recipientAt(index: bigint): Promise<`0x${string}`>; recipients(recipient: Address): Promise<DynamicRecipientInfo>; balances(recipient: Address): Promise<bigint>; recipientShare(recipient: Address, data?: HexString): Promise<bigint>; pendingCreatorFees(recipient: Address): Promise<bigint>; pendingOwnerFees(): Promise<bigint>; claimableOwnerFees(): Promise<bigint>; allRecipients(includeInactive?: boolean): Promise<`0x${string}`[]>; } export declare class ReadWriteDynamicAddressFeeSplitManager extends ReadDynamicAddressFeeSplitManager { contract: ReadWriteContract<DynamicAddressFeeSplitManagerABI>; constructor(address: Address, drift?: Drift<ReadWriteAdapter>); setPermissions(permissions: Address): Promise<`0x${string}`>; transferManagerOwnership(newManagerOwner: Address): Promise<`0x${string}`>; setModerator(moderator: Address): Promise<`0x${string}`>; updateRecipients(recipients: RecipientShare[]): Promise<`0x${string}`>; transferRecipientShare(newRecipient: Address): Promise<`0x${string}`>; claim(): Promise<`0x${string}`>; claimForData(data: HexString): Promise<`0x${string}`>; deposit(flaunchToken: FlaunchToken, creator: Address, data: HexString): Promise<`0x${string}`>; setCreator(flaunchToken: FlaunchToken, creator: Address): Promise<`0x${string}`>; rescue(flaunchToken: FlaunchToken, recipient: Address): Promise<`0x${string}`>; } //# sourceMappingURL=DynamicAddressFeeSplitManagerClient.d.ts.map