@river-build/web3
Version:
Dapps for our Space and Registry contracts
94 lines • 4.47 kB
TypeScript
import { BigNumberish, ethers } from 'ethers';
import { ChannelDetails, ChannelMetadata, EntitlementDetails, EntitlementModuleType, EntitlementShim, Permission, RoleDetails, RoleEntitlements } from '../ContractTypes';
import { IChannelShim } from './IChannelShim';
import { IRolesBase, IRolesShim } from './IRolesShim';
import { ISpaceOwnerBase, ISpaceOwnerShim } from './ISpaceOwnerShim';
import { IEntitlementsShim } from './IEntitlementsShim';
import { IMulticallShim } from './IMulticallShim';
import { OwnableFacetShim } from './OwnableFacetShim';
import { TokenPausableFacetShim } from './TokenPausableFacetShim';
import { IMembershipShim } from './IMembershipShim';
import { IBanningShim } from './IBanningShim';
import { ITippingShim } from './ITippingShim';
import { IERC721AQueryableShim } from './IERC721AQueryableShim';
import { IEntitlementDataQueryableShim } from './IEntitlementDataQueryableShim';
import { BaseChainConfig } from '../IStaticContractsInfo';
import { IPrepayShim } from './IPrepayShim';
import { IERC721AShim } from './IERC721AShim';
import { IReviewShim } from './IReviewShim';
export declare class Space {
private readonly address;
private readonly addressToEntitlement;
private readonly spaceId;
readonly provider: ethers.providers.Provider | undefined;
private readonly channel;
private readonly entitlements;
private readonly multicall;
private readonly ownable;
private readonly pausable;
private readonly roles;
private readonly spaceOwner;
private readonly membership;
private readonly banning;
private readonly erc721AQueryable;
private readonly entitlementDataQueryable;
private readonly prepay;
private readonly erc721A;
private readonly spaceOwnerErc721A;
private readonly tipping;
private readonly review;
constructor(address: string, spaceId: string, config: BaseChainConfig, provider: ethers.providers.Provider | undefined);
private getAllShims;
get Address(): string;
get SpaceId(): string;
get Channels(): IChannelShim;
get Multicall(): IMulticallShim;
get Ownable(): OwnableFacetShim;
get Pausable(): TokenPausableFacetShim;
get Roles(): IRolesShim;
get Entitlements(): IEntitlementsShim;
get SpaceOwner(): ISpaceOwnerShim;
get Membership(): IMembershipShim;
get Banning(): IBanningShim;
get ERC721AQueryable(): IERC721AQueryableShim;
get EntitlementDataQueryable(): IEntitlementDataQueryableShim;
get Prepay(): IPrepayShim;
get ERC721A(): IERC721AShim;
get SpaceOwnerErc721A(): IERC721AShim;
get Tipping(): ITippingShim;
get Review(): IReviewShim;
totalTips({ currency }: {
currency: string;
}): Promise<{
count: bigint;
amount: bigint;
}>;
getSpaceInfo(): Promise<ISpaceOwnerBase.SpaceStruct>;
getRole(roleId: BigNumberish): Promise<RoleDetails | null>;
getChannel(channelNetworkId: string): Promise<ChannelDetails | null>;
getChannelMetadata(channelNetworkId: string): Promise<ChannelMetadata | null>;
getChannels(): Promise<ChannelMetadata[]>;
getChannelRoles(channelNetworkId: string): Promise<IRolesBase.RoleStructOutput[]>;
getPermissionsByRoleId(roleId: number): Promise<Permission[]>;
private getChannelRoleEntitlements;
findEntitlementByType(entitlementType: EntitlementModuleType): Promise<EntitlementShim | null>;
parseError(error: unknown): Error;
parseLog(log: ethers.providers.Log): ethers.utils.LogDescription;
private getEntitlementByAddress;
private getRoleInfo;
getEntitlementShims(): Promise<EntitlementShim[]>;
getEntitlementDetails(entitlementShims: EntitlementShim[], roleId: BigNumberish): Promise<EntitlementDetails>;
private getChannelsWithRole;
private getRolesInfo;
getRoleEntitlements(entitlementShims: EntitlementShim[], roleId: BigNumberish): Promise<RoleEntitlements | null>;
getTokenIdsOfOwner(linkedWallets: string[]): Promise<string[]>;
getProtocolFee(): Promise<bigint>;
/**
* This function is potentially expensive and should be used with caution.
* For example, a space with 1000 members will make 1000 + 1 calls to the blockchain.
* @param untilTokenId - The token id to stop at, if not provided, will get all members
* @returns An array of member addresses
*/
__expensivelyGetMembers(untilTokenId?: BigNumberish): Promise<string[]>;
}
//# sourceMappingURL=Space.d.ts.map