import { AnyObjectType, BigIntAsString, ModuleName, ObjectId, SuiAddress, TransactionDigest } from "./generalTypes";
export type BcsTypeName = string | [string, ...(BcsTypeName | string)[]];
export interface EventOnChain<Fields> {
    id: {
        txDigest: TransactionDigest;
        eventSeq: BigIntAsString;
    };
    packageId: ObjectId;
    transactionModule: ModuleName;
    sender: SuiAddress;
    type: AnyObjectType;
    parsedJson: Fields;
    bcs: string;
    timestampMs: number | undefined;
}
export interface WrappedEventOnChain<Fields> {
    id: {
        txDigest: TransactionDigest;
        eventSeq: BigIntAsString;
    };
    packageId: ObjectId;
    transactionModule: ModuleName;
    sender: SuiAddress;
    type: AnyObjectType;
    parsedJson: {
        pos0: Fields;
    };
    bcs: string;
    timestampMs: number | undefined;
}
export type IndexerEventOnChain<Fields> = {
    type: AnyObjectType;
    timestamp: number | null;
    txnDigest: TransactionDigest;
} & Fields;
export interface TableOnChain {
    type: AnyObjectType;
    fields: {
        id: {
            id: ObjectId;
        };
        size: BigIntAsString;
    };
}
export interface SupplyOnChain {
    type: AnyObjectType;
    fields: {
        value: BigIntAsString;
    };
}
//# sourceMappingURL=castingTypes.d.ts.map