wagmi
Version:
React Hooks for Ethereum
422 lines • 16.7 kB
TypeScript
import type { UseMutationResult } from '@tanstack/react-query';
import type { Config, ResolvedRegister } from '@wagmi/core';
import type { ConfigParameter, ExactPartial, UnionCompute } from '@wagmi/core/internal';
import { Actions } from '@wagmi/core/tempo';
import { type UseMutationParameters, type UseQueryReturnType } from '../../utils/query.js';
import type { QueryParameter } from '../utils.js';
/**
* Hook for creating a new policy.
*
* @example
* ```tsx
* import { Hooks } from 'wagmi/tempo'
*
* function App() {
* const { mutate, isPending } = Hooks.policy.useCreate()
*
* return (
* <button
* onClick={() => mutate({ type: 'whitelist' })}
* disabled={isPending}
* >
* Create Policy
* </button>
* )
* }
* ```
*
* @param parameters - Parameters.
* @returns Mutation result.
*/
export declare function useCreate<config extends Config = ResolvedRegister['config'], context = unknown>(parameters?: useCreate.Parameters<config, context>): useCreate.ReturnType<config, context>;
export declare namespace useCreate {
type Parameters<config extends Config = Config, context = unknown> = ConfigParameter<config> & {
mutation?: UseMutationParameters<Actions.policy.create.ReturnValue, Actions.policy.create.ErrorType, Actions.policy.create.Parameters<config>, context> | undefined;
};
type ReturnType<config extends Config = Config, context = unknown> = UseMutationResult<Actions.policy.create.ReturnValue, Actions.policy.create.ErrorType, Actions.policy.create.Parameters<config>, context>;
}
/**
* Hook for creating a new policy.
*
* Note: This is a synchronous hook that waits for the transaction
* to be included on a block before returning a response.
*
* @example
* ```tsx
* import { Hooks } from 'wagmi/tempo'
*
* function App() {
* const { mutate, isPending } = Hooks.policy.useCreateSync()
*
* return (
* <button
* onClick={() => mutate({ type: 'whitelist' })}
* disabled={isPending}
* >
* Create Policy
* </button>
* )
* }
* ```
*
* @param parameters - Parameters.
* @returns Mutation result.
*/
export declare function useCreateSync<config extends Config = ResolvedRegister['config'], context = unknown>(parameters?: useCreateSync.Parameters<config, context>): useCreateSync.ReturnType<config, context>;
export declare namespace useCreateSync {
type Parameters<config extends Config = Config, context = unknown> = ConfigParameter<config> & {
mutation?: UseMutationParameters<Actions.policy.createSync.ReturnValue, Actions.policy.createSync.ErrorType, Actions.policy.createSync.Parameters<config>, context> | undefined;
};
type ReturnType<config extends Config = Config, context = unknown> = UseMutationResult<Actions.policy.createSync.ReturnValue, Actions.policy.createSync.ErrorType, Actions.policy.createSync.Parameters<config>, context>;
}
/**
* Hook for setting the admin for a policy.
*
* @example
* ```tsx
* import { Hooks } from 'wagmi/tempo'
*
* function App() {
* const { mutate, isPending } = Hooks.policy.useSetAdmin()
*
* return (
* <button
* onClick={() => mutate({ policyId: 2n, admin: '0x...' })}
* disabled={isPending}
* >
* Set Admin
* </button>
* )
* }
* ```
*
* @param parameters - Parameters.
* @returns Mutation result.
*/
export declare function useSetAdmin<config extends Config = ResolvedRegister['config'], context = unknown>(parameters?: useSetAdmin.Parameters<config, context>): useSetAdmin.ReturnType<config, context>;
export declare namespace useSetAdmin {
type Parameters<config extends Config = Config, context = unknown> = ConfigParameter<config> & {
mutation?: UseMutationParameters<Actions.policy.setAdmin.ReturnValue, Actions.policy.setAdmin.ErrorType, Actions.policy.setAdmin.Parameters<config>, context> | undefined;
};
type ReturnType<config extends Config = Config, context = unknown> = UseMutationResult<Actions.policy.setAdmin.ReturnValue, Actions.policy.setAdmin.ErrorType, Actions.policy.setAdmin.Parameters<config>, context>;
}
/**
* Hook for setting the admin for a policy.
*
* Note: This is a synchronous hook that waits for the transaction
* to be included on a block before returning a response.
*
* @example
* ```tsx
* import { Hooks } from 'wagmi/tempo'
*
* function App() {
* const { mutate, isPending } = Hooks.policy.useSetAdminSync()
*
* return (
* <button
* onClick={() => mutate({ policyId: 2n, admin: '0x...' })}
* disabled={isPending}
* >
* Set Admin
* </button>
* )
* }
* ```
*
* @param parameters - Parameters.
* @returns Mutation result.
*/
export declare function useSetAdminSync<config extends Config = ResolvedRegister['config'], context = unknown>(parameters?: useSetAdminSync.Parameters<config, context>): useSetAdminSync.ReturnType<config, context>;
export declare namespace useSetAdminSync {
type Parameters<config extends Config = Config, context = unknown> = ConfigParameter<config> & {
mutation?: UseMutationParameters<Actions.policy.setAdminSync.ReturnValue, Actions.policy.setAdminSync.ErrorType, Actions.policy.setAdminSync.Parameters<config>, context> | undefined;
};
type ReturnType<config extends Config = Config, context = unknown> = UseMutationResult<Actions.policy.setAdminSync.ReturnValue, Actions.policy.setAdminSync.ErrorType, Actions.policy.setAdminSync.Parameters<config>, context>;
}
/**
* Hook for modifying a policy whitelist.
*
* @example
* ```tsx
* import { Hooks } from 'wagmi/tempo'
*
* function App() {
* const { mutate, isPending } = Hooks.policy.useModifyWhitelist()
*
* return (
* <button
* onClick={() => mutate({ policyId: 2n, address: '0x...', allowed: true })}
* disabled={isPending}
* >
* Add to Whitelist
* </button>
* )
* }
* ```
*
* @param parameters - Parameters.
* @returns Mutation result.
*/
export declare function useModifyWhitelist<config extends Config = ResolvedRegister['config'], context = unknown>(parameters?: useModifyWhitelist.Parameters<config, context>): useModifyWhitelist.ReturnType<config, context>;
export declare namespace useModifyWhitelist {
type Parameters<config extends Config = Config, context = unknown> = ConfigParameter<config> & {
mutation?: UseMutationParameters<Actions.policy.modifyWhitelist.ReturnValue, Actions.policy.modifyWhitelist.ErrorType, Actions.policy.modifyWhitelist.Parameters<config>, context> | undefined;
};
type ReturnType<config extends Config = Config, context = unknown> = UseMutationResult<Actions.policy.modifyWhitelist.ReturnValue, Actions.policy.modifyWhitelist.ErrorType, Actions.policy.modifyWhitelist.Parameters<config>, context>;
}
/**
* Hook for modifying a policy whitelist.
*
* Note: This is a synchronous hook that waits for the transaction
* to be included on a block before returning a response.
*
* @example
* ```tsx
* import { Hooks } from 'wagmi/tempo'
*
* function App() {
* const { mutate, isPending } = Hooks.policy.useModifyWhitelistSync()
*
* return (
* <button
* onClick={() => mutate({ policyId: 2n, address: '0x...', allowed: true })}
* disabled={isPending}
* >
* Add to Whitelist
* </button>
* )
* }
* ```
*
* @param parameters - Parameters.
* @returns Mutation result.
*/
export declare function useModifyWhitelistSync<config extends Config = ResolvedRegister['config'], context = unknown>(parameters?: useModifyWhitelistSync.Parameters<config, context>): useModifyWhitelistSync.ReturnType<config, context>;
export declare namespace useModifyWhitelistSync {
type Parameters<config extends Config = Config, context = unknown> = ConfigParameter<config> & {
mutation?: UseMutationParameters<Actions.policy.modifyWhitelistSync.ReturnValue, Actions.policy.modifyWhitelistSync.ErrorType, Actions.policy.modifyWhitelistSync.Parameters<config>, context> | undefined;
};
type ReturnType<config extends Config = Config, context = unknown> = UseMutationResult<Actions.policy.modifyWhitelistSync.ReturnValue, Actions.policy.modifyWhitelistSync.ErrorType, Actions.policy.modifyWhitelistSync.Parameters<config>, context>;
}
/**
* Hook for modifying a policy blacklist.
*
* @example
* ```tsx
* import { Hooks } from 'wagmi/tempo'
*
* function App() {
* const { mutate, isPending } = Hooks.policy.useModifyBlacklist()
*
* return (
* <button
* onClick={() => mutate({ policyId: 2n, address: '0x...', restricted: true })}
* disabled={isPending}
* >
* Add to Blacklist
* </button>
* )
* }
* ```
*
* @param parameters - Parameters.
* @returns Mutation result.
*/
export declare function useModifyBlacklist<config extends Config = ResolvedRegister['config'], context = unknown>(parameters?: useModifyBlacklist.Parameters<config, context>): useModifyBlacklist.ReturnType<config, context>;
export declare namespace useModifyBlacklist {
type Parameters<config extends Config = Config, context = unknown> = ConfigParameter<config> & {
mutation?: UseMutationParameters<Actions.policy.modifyBlacklist.ReturnValue, Actions.policy.modifyBlacklist.ErrorType, Actions.policy.modifyBlacklist.Parameters<config>, context> | undefined;
};
type ReturnType<config extends Config = Config, context = unknown> = UseMutationResult<Actions.policy.modifyBlacklist.ReturnValue, Actions.policy.modifyBlacklist.ErrorType, Actions.policy.modifyBlacklist.Parameters<config>, context>;
}
/**
* Hook for modifying a policy blacklist.
*
* Note: This is a synchronous hook that waits for the transaction
* to be included on a block before returning a response.
*
* @example
* ```tsx
* import { Hooks } from 'wagmi/tempo'
*
* function App() {
* const { mutate, isPending } = Hooks.policy.useModifyBlacklistSync()
*
* return (
* <button
* onClick={() => mutate({ policyId: 2n, address: '0x...', restricted: true })}
* disabled={isPending}
* >
* Add to Blacklist
* </button>
* )
* }
* ```
*
* @param parameters - Parameters.
* @returns Mutation result.
*/
export declare function useModifyBlacklistSync<config extends Config = ResolvedRegister['config'], context = unknown>(parameters?: useModifyBlacklistSync.Parameters<config, context>): useModifyBlacklistSync.ReturnType<config, context>;
export declare namespace useModifyBlacklistSync {
type Parameters<config extends Config = Config, context = unknown> = ConfigParameter<config> & {
mutation?: UseMutationParameters<Actions.policy.modifyBlacklistSync.ReturnValue, Actions.policy.modifyBlacklistSync.ErrorType, Actions.policy.modifyBlacklistSync.Parameters<config>, context> | undefined;
};
type ReturnType<config extends Config = Config, context = unknown> = UseMutationResult<Actions.policy.modifyBlacklistSync.ReturnValue, Actions.policy.modifyBlacklistSync.ErrorType, Actions.policy.modifyBlacklistSync.Parameters<config>, context>;
}
/**
* Hook for getting policy data.
*
* @example
* ```tsx
* import { Hooks } from 'wagmi/tempo'
*
* function App() {
* const { data, isLoading } = Hooks.policy.useData({
* policyId: 2n,
* })
*
* if (isLoading) return <div>Loading...</div>
* return <div>Admin: {data?.admin}</div>
* }
* ```
*
* @param parameters - Parameters.
* @returns Query result with policy data.
*/
export declare function useData<config extends Config = ResolvedRegister['config'], selectData = Actions.policy.getData.ReturnValue>(parameters?: useData.Parameters<config, selectData>): useData.ReturnValue<selectData>;
export declare namespace useData {
type Parameters<config extends Config = ResolvedRegister['config'], selectData = Actions.policy.getData.ReturnValue> = ConfigParameter<config> & QueryParameter<Actions.policy.getData.ReturnValue, Actions.policy.getData.ErrorType, selectData, Actions.policy.getData.QueryKey<config>> & ExactPartial<Actions.policy.getData.Parameters<config>>;
type ReturnValue<selectData = Actions.policy.getData.ReturnValue> = UseQueryReturnType<selectData, Error>;
}
/**
* Hook for checking if a user is authorized by a policy.
*
* @example
* ```tsx
* import { Hooks } from 'wagmi/tempo'
*
* function App() {
* const { data, isLoading } = Hooks.policy.useIsAuthorized({
* policyId: 2n,
* user: '0x...',
* })
*
* if (isLoading) return <div>Loading...</div>
* return <div>Authorized: {data ? 'Yes' : 'No'}</div>
* }
* ```
*
* @param parameters - Parameters.
* @returns Query result with authorization status.
*/
export declare function useIsAuthorized<config extends Config = ResolvedRegister['config'], selectData = Actions.policy.isAuthorized.ReturnValue>(parameters?: useIsAuthorized.Parameters<config, selectData>): useIsAuthorized.ReturnValue<selectData>;
export declare namespace useIsAuthorized {
type Parameters<config extends Config = ResolvedRegister['config'], selectData = Actions.policy.isAuthorized.ReturnValue> = ConfigParameter<config> & QueryParameter<Actions.policy.isAuthorized.ReturnValue, Actions.policy.isAuthorized.ErrorType, selectData, Actions.policy.isAuthorized.QueryKey<config>> & ExactPartial<Actions.policy.isAuthorized.Parameters<config>>;
type ReturnValue<selectData = Actions.policy.isAuthorized.ReturnValue> = UseQueryReturnType<selectData, Error>;
}
/**
* Hook for watching policy creation events.
*
* @example
* ```tsx
* import { Hooks } from 'wagmi/tempo'
*
* function App() {
* Hooks.policy.useWatchCreate({
* onPolicyCreated(args) {
* console.log('Policy created:', args)
* },
* })
*
* return <div>Watching for policy creation...</div>
* }
* ```
*
* @param parameters - Parameters.
*/
export declare function useWatchCreate<config extends Config = ResolvedRegister['config']>(parameters?: useWatchCreate.Parameters<config>): void;
export declare namespace useWatchCreate {
type Parameters<config extends Config = Config> = UnionCompute<ExactPartial<Actions.policy.watchCreate.Parameters<config>> & ConfigParameter<config> & {
enabled?: boolean | undefined;
}>;
}
/**
* Hook for watching policy admin update events.
*
* @example
* ```tsx
* import { Hooks } from 'wagmi/tempo'
*
* function App() {
* Hooks.policy.useWatchAdminUpdated({
* onAdminUpdated(args) {
* console.log('Policy admin updated:', args)
* },
* })
*
* return <div>Watching for admin updates...</div>
* }
* ```
*
* @param parameters - Parameters.
*/
export declare function useWatchAdminUpdated<config extends Config = ResolvedRegister['config']>(parameters?: useWatchAdminUpdated.Parameters<config>): void;
export declare namespace useWatchAdminUpdated {
type Parameters<config extends Config = Config> = UnionCompute<ExactPartial<Actions.policy.watchAdminUpdated.Parameters<config>> & ConfigParameter<config> & {
enabled?: boolean | undefined;
}>;
}
/**
* Hook for watching whitelist update events.
*
* @example
* ```tsx
* import { Hooks } from 'wagmi/tempo'
*
* function App() {
* Hooks.policy.useWatchWhitelistUpdated({
* onWhitelistUpdated(args) {
* console.log('Whitelist updated:', args)
* },
* })
*
* return <div>Watching for whitelist updates...</div>
* }
* ```
*
* @param parameters - Parameters.
*/
export declare function useWatchWhitelistUpdated<config extends Config = ResolvedRegister['config']>(parameters?: useWatchWhitelistUpdated.Parameters<config>): void;
export declare namespace useWatchWhitelistUpdated {
type Parameters<config extends Config = Config> = UnionCompute<ExactPartial<Actions.policy.watchWhitelistUpdated.Parameters<config>> & ConfigParameter<config> & {
enabled?: boolean | undefined;
}>;
}
/**
* Hook for watching blacklist update events.
*
* @example
* ```tsx
* import { Hooks } from 'wagmi/tempo'
*
* function App() {
* Hooks.policy.useWatchBlacklistUpdated({
* onBlacklistUpdated(args) {
* console.log('Blacklist updated:', args)
* },
* })
*
* return <div>Watching for blacklist updates...</div>
* }
* ```
*
* @param parameters - Parameters.
*/
export declare function useWatchBlacklistUpdated<config extends Config = ResolvedRegister['config']>(parameters?: useWatchBlacklistUpdated.Parameters<config>): void;
export declare namespace useWatchBlacklistUpdated {
type Parameters<config extends Config = Config> = UnionCompute<ExactPartial<Actions.policy.watchBlacklistUpdated.Parameters<config>> & ConfigParameter<config> & {
enabled?: boolean | undefined;
}>;
}
//# sourceMappingURL=policy.d.ts.map