@lit-protocol/vincent-scaffold-sdk
Version:
Shared build configuration and utilities for Vincent abilities and policies
77 lines • 2.71 kB
TypeScript
import { ContractClient, PermissionData, ValidateAbilityExecutionAndGetPoliciesResult } from "@lit-protocol/vincent-contracts-sdk";
import { StateManager } from "./state-manager";
export interface ChainClient {
registerApp: (params: {
abilityIpfsCids: string[];
abilityPolicies: string[][];
}) => Promise<{
appId: number;
appVersion: number;
}>;
registerNextAppVersion: (params: {
appId: number;
abilityIpfsCids: string[];
abilityPolicies: string[][];
}) => Promise<{
appId: number;
appVersion: number;
}>;
permitAppVersion: (params: {
pkpEthAddress: string;
appId: number;
appVersion: number;
abilityIpfsCids: string[];
policyIpfsCids: string[][];
}) => Promise<{
txHash: string | null;
skipped?: boolean;
}>;
validateAbilityExecution: (params: {
delegateeAddress: string;
pkpEthAddress: string;
abilityIpfsCid: string;
}) => Promise<ValidateAbilityExecutionAndGetPoliciesResult>;
}
export declare const createRegisterAppFunction: (stateManager: StateManager, contractClient: ContractClient, delegateeAccount: {
address: string;
}) => ({ abilityIpfsCids, abilityPolicies, policyParams, }: {
abilityIpfsCids: string[];
abilityPolicies: string[][];
policyParams: PermissionData;
}) => Promise<{
appId: number;
appVersion: number;
isNew: boolean;
isNewVersion: boolean;
abilityIpfsCids: string[];
abilityPolicies: string[][];
policyParams: PermissionData;
}>;
export declare const createRegisterNextAppVersionFunction: (contractClient: ContractClient) => ({ appId, abilityIpfsCids, abilityPolicies, }: {
appId: number;
abilityIpfsCids: string[];
abilityPolicies: string[][];
}) => Promise<{
appId: number;
appVersion: number;
}>;
export declare const createPermitAppVersionFunction: (stateManager: StateManager, contractClient: ContractClient) => ({ pkpEthAddress, appId, appVersion, abilityIpfsCids, policyIpfsCids, policyParams, }: {
pkpEthAddress: string;
appId: number;
appVersion: number;
abilityIpfsCids: string[];
policyIpfsCids: string[][];
policyParams: PermissionData;
}) => Promise<{
txHash: null;
skipped: boolean;
} | {
txHash: string;
skipped?: undefined;
}>;
export declare const createValidateAbilityExecutionFunction: (contractClient: ContractClient) => ({ delegateeAddress, pkpEthAddress, abilityIpfsCid, }: {
delegateeAddress: string;
pkpEthAddress: string;
abilityIpfsCid: string;
}) => Promise<ValidateAbilityExecutionAndGetPoliciesResult>;
//# sourceMappingURL=chain-client.d.ts.map