import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; export type TablelandPolicyStruct = { allowInsert: boolean; allowUpdate: boolean; allowDelete: boolean; whereClause: string; withCheck: string; updatableColumns: string[]; }; export type TablelandPolicyStructOutput = [ allowInsert: boolean, allowUpdate: boolean, allowDelete: boolean, whereClause: string, withCheck: string, updatableColumns: string[] ] & { allowInsert: boolean; allowUpdate: boolean; allowDelete: boolean; whereClause: string; withCheck: string; updatableColumns: string[]; }; export declare namespace ITablelandTables { type StatementStruct = { tableId: BigNumberish; statement: string; }; type StatementStructOutput = [tableId: bigint, statement: string] & { tableId: bigint; statement: string; }; } export interface ITablelandTablesInterface extends Interface { getFunction(nameOrSignature: "create(address,string[])" | "create(address,string)" | "getController" | "lockController" | "mutate(address,uint256,string)" | "mutate(address,(uint256,string)[])" | "pause" | "setBaseURI" | "setController" | "unpause"): FunctionFragment; getEvent(nameOrSignatureOrTopic: "CreateTable" | "RunSQL" | "SetController" | "TransferTable"): EventFragment; encodeFunctionData(functionFragment: "create(address,string[])", values: [AddressLike, string[]]): string; encodeFunctionData(functionFragment: "create(address,string)", values: [AddressLike, string]): string; encodeFunctionData(functionFragment: "getController", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "lockController", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "mutate(address,uint256,string)", values: [AddressLike, BigNumberish, string]): string; encodeFunctionData(functionFragment: "mutate(address,(uint256,string)[])", values: [AddressLike, ITablelandTables.StatementStruct[]]): string; encodeFunctionData(functionFragment: "pause", values?: undefined): string; encodeFunctionData(functionFragment: "setBaseURI", values: [string]): string; encodeFunctionData(functionFragment: "setController", values: [AddressLike, BigNumberish, AddressLike]): string; encodeFunctionData(functionFragment: "unpause", values?: undefined): string; decodeFunctionResult(functionFragment: "create(address,string[])", data: BytesLike): Result; decodeFunctionResult(functionFragment: "create(address,string)", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getController", data: BytesLike): Result; decodeFunctionResult(functionFragment: "lockController", data: BytesLike): Result; decodeFunctionResult(functionFragment: "mutate(address,uint256,string)", data: BytesLike): Result; decodeFunctionResult(functionFragment: "mutate(address,(uint256,string)[])", data: BytesLike): Result; decodeFunctionResult(functionFragment: "pause", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setBaseURI", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setController", data: BytesLike): Result; decodeFunctionResult(functionFragment: "unpause", data: BytesLike): Result; } export declare namespace CreateTableEvent { type InputTuple = [ owner: AddressLike, tableId: BigNumberish, statement: string ]; type OutputTuple = [owner: string, tableId: bigint, statement: string]; interface OutputObject { owner: string; tableId: bigint; statement: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace RunSQLEvent { type InputTuple = [ caller: AddressLike, isOwner: boolean, tableId: BigNumberish, statement: string, policy: TablelandPolicyStruct ]; type OutputTuple = [ caller: string, isOwner: boolean, tableId: bigint, statement: string, policy: TablelandPolicyStructOutput ]; interface OutputObject { caller: string; isOwner: boolean; tableId: bigint; statement: string; policy: TablelandPolicyStructOutput; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace SetControllerEvent { type InputTuple = [tableId: BigNumberish, controller: AddressLike]; type OutputTuple = [tableId: bigint, controller: string]; interface OutputObject { tableId: bigint; controller: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace TransferTableEvent { type InputTuple = [ from: AddressLike, to: AddressLike, tableId: BigNumberish ]; type OutputTuple = [from: string, to: string, tableId: bigint]; interface OutputObject { from: string; to: string; tableId: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export interface ITablelandTables extends BaseContract { connect(runner?: ContractRunner | null): ITablelandTables; waitForDeployment(): Promise; interface: ITablelandTablesInterface; queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; on(event: TCEvent, listener: TypedListener): Promise; on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; once(event: TCEvent, listener: TypedListener): Promise; once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; listeners(event: TCEvent): Promise>>; listeners(eventName?: string): Promise>; removeAllListeners(event?: TCEvent): Promise; "create(address,string[])": TypedContractMethod<[ owner: AddressLike, statements: string[] ], [ bigint[] ], "payable">; "create(address,string)": TypedContractMethod<[ owner: AddressLike, statement: string ], [ bigint ], "payable">; getController: TypedContractMethod<[ tableId: BigNumberish ], [ string ], "nonpayable">; lockController: TypedContractMethod<[ caller: AddressLike, tableId: BigNumberish ], [ void ], "nonpayable">; "mutate(address,uint256,string)": TypedContractMethod<[ caller: AddressLike, tableId: BigNumberish, statement: string ], [ void ], "payable">; "mutate(address,(uint256,string)[])": TypedContractMethod<[ caller: AddressLike, statements: ITablelandTables.StatementStruct[] ], [ void ], "payable">; pause: TypedContractMethod<[], [void], "nonpayable">; setBaseURI: TypedContractMethod<[baseURI: string], [void], "nonpayable">; setController: TypedContractMethod<[ caller: AddressLike, tableId: BigNumberish, controller: AddressLike ], [ void ], "nonpayable">; unpause: TypedContractMethod<[], [void], "nonpayable">; getFunction(key: string | FunctionFragment): T; getFunction(nameOrSignature: "create(address,string[])"): TypedContractMethod<[ owner: AddressLike, statements: string[] ], [ bigint[] ], "payable">; getFunction(nameOrSignature: "create(address,string)"): TypedContractMethod<[ owner: AddressLike, statement: string ], [ bigint ], "payable">; getFunction(nameOrSignature: "getController"): TypedContractMethod<[tableId: BigNumberish], [string], "nonpayable">; getFunction(nameOrSignature: "lockController"): TypedContractMethod<[ caller: AddressLike, tableId: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "mutate(address,uint256,string)"): TypedContractMethod<[ caller: AddressLike, tableId: BigNumberish, statement: string ], [ void ], "payable">; getFunction(nameOrSignature: "mutate(address,(uint256,string)[])"): TypedContractMethod<[ caller: AddressLike, statements: ITablelandTables.StatementStruct[] ], [ void ], "payable">; getFunction(nameOrSignature: "pause"): TypedContractMethod<[], [void], "nonpayable">; getFunction(nameOrSignature: "setBaseURI"): TypedContractMethod<[baseURI: string], [void], "nonpayable">; getFunction(nameOrSignature: "setController"): TypedContractMethod<[ caller: AddressLike, tableId: BigNumberish, controller: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "unpause"): TypedContractMethod<[], [void], "nonpayable">; getEvent(key: "CreateTable"): TypedContractEvent; getEvent(key: "RunSQL"): TypedContractEvent; getEvent(key: "SetController"): TypedContractEvent; getEvent(key: "TransferTable"): TypedContractEvent; filters: { "CreateTable(address,uint256,string)": TypedContractEvent; CreateTable: TypedContractEvent; "RunSQL(address,bool,uint256,string,tuple)": TypedContractEvent; RunSQL: TypedContractEvent; "SetController(uint256,address)": TypedContractEvent; SetController: TypedContractEvent; "TransferTable(address,address,uint256)": TypedContractEvent; TransferTable: TypedContractEvent; }; } //# sourceMappingURL=ITablelandTables.d.ts.map