abi abi : objectOutputType < { inputs : ZodDefault < ZodArray < ZodObject < { components : ZodOptional < ZodArray < ZodObject < { name : ZodDefault < ZodString > ; type : ZodString ; } , "strip" , ZodAny , objectOutputType < { name : ZodDefault < ZodString > ; type : ZodString ; } , ZodAny , "strip" > , objectInputType < { name : ZodDefault < ZodString > ; type : ZodString ; } , ZodAny , "strip" > > , "many" > > ; name : ZodDefault < ZodString > ; stateMutability : ZodOptional < ZodString > ; type : ZodString ; } , "strip" , ZodAny , objectOutputType < { components : ZodOptional < ZodArray < ZodObject < { name : ZodDefault < ZodString > ; type : ZodString ; } , "strip" , ZodAny , objectOutputType < { name : ZodDefault < ZodString > ; type : ZodString ; } , ZodAny , "strip" > , objectInputType < { name : ZodDefault < ZodString > ; type : ZodString ; } , ZodAny , "strip" > > , "many" > > ; name : ZodDefault < ZodString > ; stateMutability : ZodOptional < ZodString > ; type : ZodString ; } , ZodAny , "strip" > , objectInputType < { components : ZodOptional < ZodArray < ZodObject < { name : ZodDefault < ZodString > ; type : ZodString ; } , "strip" , ZodAny , objectOutputType < { name : ZodDefault < ZodString > ; type : ZodString ; } , ZodAny , "strip" > , objectInputType < { name : ZodDefault < ZodString > ; type : ZodString ; } , ZodAny , "strip" > > , "many" > > ; name : ZodDefault < ZodString > ; stateMutability : ZodOptional < ZodString > ; type : ZodString ; } , ZodAny , "strip" > > , "many" > > ; name : ZodDefault < ZodString > ; outputs : ZodDefault < ZodArray < ZodObject < { components : ZodOptional < ZodArray < ZodObject < { name : ZodDefault < ZodString > ; type : ZodString ; } , "strip" , ZodAny , objectOutputType < { name : ZodDefault < ZodString > ; type : ZodString ; } , ZodAny , "strip" > , objectInputType < { name : ZodDefault < ZodString > ; type : ZodString ; } , ZodAny , "strip" > > , "many" > > ; name : ZodDefault < ZodString > ; stateMutability : ZodOptional < ZodString > ; type : ZodString ; } , "strip" , ZodAny , objectOutputType < { components : ZodOptional < ZodArray < ZodObject < { name : ZodDefault < ZodString > ; type : ZodString ; } , "strip" , ZodAny , objectOutputType < { name : ZodDefault < ZodString > ; type : ZodString ; } , ZodAny , "strip" > , objectInputType < { name : ZodDefault < ZodString > ; type : ZodString ; } , ZodAny , "strip" > > , "many" > > ; name : ZodDefault < ZodString > ; stateMutability : ZodOptional < ZodString > ; type : ZodString ; } , ZodAny , "strip" > , objectInputType < { components : ZodOptional < ZodArray < ZodObject < { name : ZodDefault < ZodString > ; type : ZodString ; } , "strip" , ZodAny , objectOutputType < { name : ZodDefault < ZodString > ; type : ZodString ; } , ZodAny , "strip" > , objectInputType < { name : ZodDefault < ZodString > ; type : ZodString ; } , ZodAny , "strip" > > , "many" > > ; name : ZodDefault < ZodString > ; stateMutability : ZodOptional < ZodString > ; type : ZodString ; } , ZodAny , "strip" > > , "many" > > ; type : ZodString ; } , ZodAny , "strip" > []
metadata metadata : ContractMetadata < Split , { deploy : ZodObject < { app_uri : ZodOptional < ZodString > ; description : ZodOptional < ZodString > ; external_link : ZodOptional < ZodString > ; image : ZodOptional < ZodUnion < [ ZodUnion < [ ZodTypeAny , ZodObject < { data : ZodUnion < [ ZodTypeAny , ZodString ] > ; name : ZodString ; } , "strip" , ZodTypeAny , { data ?: any ; name : string ; } , { data ?: any ; name : string ; } > ] > , ZodString ] > > ; name : ZodString ; recipients : ZodEffects < ZodDefault < ZodArray < ZodObject < { address : ZodUnion < [ ZodType < string , ZodTypeDef , string > , ZodType < ` 0x ${ string } ` , ZodTypeDef , ` ${ string } .eth ` | ` ${ string } .cb.id ` > ] > ; sharesBps : ZodNumber ; } , "strip" , ZodTypeAny , { address : string ; sharesBps : number ; } , { address : string ; sharesBps : number ; } > , "many" > > , { address : string ; sharesBps : number ; } [] , undefined | { address : string ; sharesBps : number ; } [] > ; social_urls : ZodOptional < ZodRecord < ZodString , ZodString > > ; trusted_forwarders : ZodDefault < ZodArray < ZodUnion < [ ZodType < string , ZodTypeDef , string > , ZodType < ` 0x ${ string } ` , ZodTypeDef , ` ${ string } .eth ` | ` ${ string } .cb.id ` > ] > , "many" > > ; } , "strip" , ZodTypeAny , { app_uri ?: string ; description ?: string ; external_link ?: string ; image ?: any ; name : string ; recipients : { address : string ; sharesBps : number ; } [] ; social_urls ?: Record < string , string > ; trusted_forwarders : string [] ; } , { app_uri ?: string ; description ?: string ; external_link ?: string ; image ?: any ; name : string ; recipients ?: { address : string ; sharesBps : number ; } [] ; social_urls ?: Record < string , string > ; trusted_forwarders ?: string [] ; } > ; input : ZodObject < { app_uri : ZodOptional < ZodString > ; description : ZodOptional < ZodString > ; external_link : ZodOptional < ZodString > ; image : ZodOptional < ZodUnion < [ ZodUnion < [ ZodTypeAny , ZodObject < { data : ZodUnion < [ ZodTypeAny , ZodString ] > ; name : ZodString ; } , "strip" , ZodTypeAny , { data ?: any ; name : string ; } , { data ?: any ; name : string ; } > ] > , ZodString ] > > ; name : ZodString ; recipients : ZodEffects < ZodDefault < ZodArray < ZodObject < { address : ZodUnion < [ ZodType < string , ZodTypeDef , string > , ZodType < ` 0x ${ string } ` , ZodTypeDef , ` ${ string } .eth ` | ` ${ string } .cb.id ` > ] > ; sharesBps : ZodNumber ; } , "strip" , ZodTypeAny , { address : string ; sharesBps : number ; } , { address : string ; sharesBps : number ; } > , "many" > > , { address : string ; sharesBps : number ; } [] , undefined | { address : string ; sharesBps : number ; } [] > ; social_urls : ZodOptional < ZodRecord < ZodString , ZodString > > ; } , "strip" , ZodUnknown , objectOutputType < { app_uri : ZodOptional < ZodString > ; description : ZodOptional < ZodString > ; external_link : ZodOptional < ZodString > ; image : ZodOptional < ZodUnion < [ ZodUnion < [ ZodTypeAny , ZodObject < { data : ZodUnion < [ ZodTypeAny , ZodString ] > ; name : ZodString ; } , "strip" , ZodTypeAny , { data ?: any ; name : string ; } , { data ?: any ; name : string ; } > ] > , ZodString ] > > ; name : ZodString ; recipients : ZodEffects < ZodDefault < ZodArray < ZodObject < { address : ZodUnion < [ ZodType < string , ZodTypeDef , string > , ZodType < ` 0x ${ string } ` , ZodTypeDef , ` ${ string } .eth ` | ` ${ string } .cb.id ` > ] > ; sharesBps : ZodNumber ; } , "strip" , ZodTypeAny , { address : string ; sharesBps : number ; } , { address : string ; sharesBps : number ; } > , "many" > > , { address : string ; sharesBps : number ; } [] , undefined | { address : string ; sharesBps : number ; } [] > ; social_urls : ZodOptional < ZodRecord < ZodString , ZodString > > ; } , ZodUnknown , "strip" > , objectInputType < { app_uri : ZodOptional < ZodString > ; description : ZodOptional < ZodString > ; external_link : ZodOptional < ZodString > ; image : ZodOptional < ZodUnion < [ ZodUnion < [ ZodTypeAny , ZodObject < { data : ZodUnion < [ ZodTypeAny , ZodString ] > ; name : ZodString ; } , "strip" , ZodTypeAny , { data ?: any ; name : string ; } , { data ?: any ; name : string ; } > ] > , ZodString ] > > ; name : ZodString ; recipients : ZodEffects < ZodDefault < ZodArray < ZodObject < { address : ZodUnion < [ ZodType < string , ZodTypeDef , string > , ZodType < ` 0x ${ string } ` , ZodTypeDef , ` ${ string } .eth ` | ` ${ string } .cb.id ` > ] > ; sharesBps : ZodNumber ; } , "strip" , ZodTypeAny , { address : string ; sharesBps : number ; } , { address : string ; sharesBps : number ; } > , "many" > > , { address : string ; sharesBps : number ; } [] , undefined | { address : string ; sharesBps : number ; } [] > ; social_urls : ZodOptional < ZodRecord < ZodString , ZodString > > ; } , ZodUnknown , "strip" > > ; output : ZodObject < { app_uri : ZodOptional < ZodString > ; description : ZodOptional < ZodString > ; external_link : ZodOptional < ZodString > ; image : ZodOptional < ZodString > ; name : ZodString ; recipients : ZodArray < ZodObject < ( { address: ZodUnion<[ZodType<string, ZodTypeDef, string>, ZodType<`0x${string}`, ZodTypeDef, `${string}.eth` | `${string}.cb.id`>]>; sharesBps: ZodNumber; }
) , "strip" , ZodTypeAny , ( { address: string; sharesBps: number; }
) , ( { address: string; sharesBps: number; }
) > , "many" > ; social_urls : ZodOptional < ZodRecord < ZodString , ZodString > > ; } , "strip" , ZodUnknown , objectOutputType < { app_uri : ZodOptional < ZodString > ; description : ZodOptional < ZodString > ; external_link : ZodOptional < ZodString > ; image : ZodOptional < ZodString > ; name : ZodString ; recipients : ZodArray < ZodObject < ( { address: ZodUnion<[ZodType<string, ZodTypeDef, string>, ZodType<`0x${string}`, ZodTypeDef, `${string}.eth` | `${string}.cb.id`>]>; sharesBps: ZodNumber; }
) , "strip" , ZodTypeAny , ( { address: string; sharesBps: number; }
) , ( { address: string; sharesBps: number; }
) > , "many" > ; social_urls : ZodOptional < ZodRecord < ZodString , ZodString > > ; } , ZodUnknown , "strip" > , objectInputType < { app_uri : ZodOptional < ZodString > ; description : ZodOptional < ZodString > ; external_link : ZodOptional < ZodString > ; image : ZodOptional < ZodString > ; name : ZodString ; recipients : ZodArray < ZodObject < ( { address: ZodUnion<[ZodType<string, ZodTypeDef, string>, ZodType<`0x${string}`, ZodTypeDef, `${string}.eth` | `${string}.cb.id`>]>; sharesBps: ZodNumber; }
) , "strip" , ZodTypeAny , ( { address: string; sharesBps: number; }
) , ( { address: string; sharesBps: number; }
) > , "many" > ; social_urls : ZodOptional < ZodRecord < ZodString , ZodString > > ; } , ZodUnknown , "strip" > > ; } > Type declaration deploy : ZodObject < { app_uri : ZodOptional < ZodString > ; description : ZodOptional < ZodString > ; external_link : ZodOptional < ZodString > ; image : ZodOptional < ZodUnion < [ ZodUnion < [ ZodTypeAny , ZodObject < { data : ZodUnion < [ ZodTypeAny , ZodString ] > ; name : ZodString ; } , "strip" , ZodTypeAny , { data ?: any ; name : string ; } , { data ?: any ; name : string ; } > ] > , ZodString ] > > ; name : ZodString ; recipients : ZodEffects < ZodDefault < ZodArray < ZodObject < { address : ZodUnion < [ ZodType < string , ZodTypeDef , string > , ZodType < ` 0x ${ string } ` , ZodTypeDef , ` ${ string } .eth ` | ` ${ string } .cb.id ` > ] > ; sharesBps : ZodNumber ; } , "strip" , ZodTypeAny , { address : string ; sharesBps : number ; } , { address : string ; sharesBps : number ; } > , "many" > > , { address : string ; sharesBps : number ; } [] , undefined | { address : string ; sharesBps : number ; } [] > ; social_urls : ZodOptional < ZodRecord < ZodString , ZodString > > ; trusted_forwarders : ZodDefault < ZodArray < ZodUnion < [ ZodType < string , ZodTypeDef , string > , ZodType < ` 0x ${ string } ` , ZodTypeDef , ` ${ string } .eth ` | ` ${ string } .cb.id ` > ] > , "many" > > ; } , "strip" , ZodTypeAny , { app_uri ?: string ; description ?: string ; external_link ?: string ; image ?: any ; name : string ; recipients : { address : string ; sharesBps : number ; } [] ; social_urls ?: Record < string , string > ; trusted_forwarders : string [] ; } , { app_uri ?: string ; description ?: string ; external_link ?: string ; image ?: any ; name : string ; recipients ?: { address : string ; sharesBps : number ; } [] ; social_urls ?: Record < string , string > ; trusted_forwarders ?: string [] ; } > input : ZodObject < { app_uri : ZodOptional < ZodString > ; description : ZodOptional < ZodString > ; external_link : ZodOptional < ZodString > ; image : ZodOptional < ZodUnion < [ ZodUnion < [ ZodTypeAny , ZodObject < { data : ZodUnion < [ ZodTypeAny , ZodString ] > ; name : ZodString ; } , "strip" , ZodTypeAny , { data ?: any ; name : string ; } , { data ?: any ; name : string ; } > ] > , ZodString ] > > ; name : ZodString ; recipients : ZodEffects < ZodDefault < ZodArray < ZodObject < { address : ZodUnion < [ ZodType < string , ZodTypeDef , string > , ZodType < ` 0x ${ string } ` , ZodTypeDef , ` ${ string } .eth ` | ` ${ string } .cb.id ` > ] > ; sharesBps : ZodNumber ; } , "strip" , ZodTypeAny , { address : string ; sharesBps : number ; } , { address : string ; sharesBps : number ; } > , "many" > > , { address : string ; sharesBps : number ; } [] , undefined | { address : string ; sharesBps : number ; } [] > ; social_urls : ZodOptional < ZodRecord < ZodString , ZodString > > ; } , "strip" , ZodUnknown , objectOutputType < { app_uri : ZodOptional < ZodString > ; description : ZodOptional < ZodString > ; external_link : ZodOptional < ZodString > ; image : ZodOptional < ZodUnion < [ ZodUnion < [ ZodTypeAny , ZodObject < { data : ZodUnion < [ ZodTypeAny , ZodString ] > ; name : ZodString ; } , "strip" , ZodTypeAny , { data ?: any ; name : string ; } , { data ?: any ; name : string ; } > ] > , ZodString ] > > ; name : ZodString ; recipients : ZodEffects < ZodDefault < ZodArray < ZodObject < { address : ZodUnion < [ ZodType < string , ZodTypeDef , string > , ZodType < ` 0x ${ string } ` , ZodTypeDef , ` ${ string } .eth ` | ` ${ string } .cb.id ` > ] > ; sharesBps : ZodNumber ; } , "strip" , ZodTypeAny , { address : string ; sharesBps : number ; } , { address : string ; sharesBps : number ; } > , "many" > > , { address : string ; sharesBps : number ; } [] , undefined | { address : string ; sharesBps : number ; } [] > ; social_urls : ZodOptional < ZodRecord < ZodString , ZodString > > ; } , ZodUnknown , "strip" > , objectInputType < { app_uri : ZodOptional < ZodString > ; description : ZodOptional < ZodString > ; external_link : ZodOptional < ZodString > ; image : ZodOptional < ZodUnion < [ ZodUnion < [ ZodTypeAny , ZodObject < { data : ZodUnion < [ ZodTypeAny , ZodString ] > ; name : ZodString ; } , "strip" , ZodTypeAny , { data ?: any ; name : string ; } , { data ?: any ; name : string ; } > ] > , ZodString ] > > ; name : ZodString ; recipients : ZodEffects < ZodDefault < ZodArray < ZodObject < { address : ZodUnion < [ ZodType < string , ZodTypeDef , string > , ZodType < ` 0x ${ string } ` , ZodTypeDef , ` ${ string } .eth ` | ` ${ string } .cb.id ` > ] > ; sharesBps : ZodNumber ; } , "strip" , ZodTypeAny , { address : string ; sharesBps : number ; } , { address : string ; sharesBps : number ; } > , "many" > > , { address : string ; sharesBps : number ; } [] , undefined | { address : string ; sharesBps : number ; } [] > ; social_urls : ZodOptional < ZodRecord < ZodString , ZodString > > ; } , ZodUnknown , "strip" > > output : ZodObject < { app_uri : ZodOptional < ZodString > ; description : ZodOptional < ZodString > ; external_link : ZodOptional < ZodString > ; image : ZodOptional < ZodString > ; name : ZodString ; recipients : ZodArray < ZodObject < ( { address: ZodUnion<[ZodType<string, ZodTypeDef, string>, ZodType<`0x${string}`, ZodTypeDef, `${string}.eth` | `${string}.cb.id`>]>; sharesBps: ZodNumber; }) , "strip" , ZodTypeAny , ( { address: string; sharesBps: number; }) , ( { address: string; sharesBps: number; }) > , "many" > ; social_urls : ZodOptional < ZodRecord < ZodString , ZodString > > ; } , "strip" , ZodUnknown , objectOutputType < { app_uri : ZodOptional < ZodString > ; description : ZodOptional < ZodString > ; external_link : ZodOptional < ZodString > ; image : ZodOptional < ZodString > ; name : ZodString ; recipients : ZodArray < ZodObject < ( { address: ZodUnion<[ZodType<string, ZodTypeDef, string>, ZodType<`0x${string}`, ZodTypeDef, `${string}.eth` | `${string}.cb.id`>]>; sharesBps: ZodNumber; }) , "strip" , ZodTypeAny , ( { address: string; sharesBps: number; }) , ( { address: string; sharesBps: number; }) > , "many" > ; social_urls : ZodOptional < ZodRecord < ZodString , ZodString > > ; } , ZodUnknown , "strip" > , objectInputType < { app_uri : ZodOptional < ZodString > ; description : ZodOptional < ZodString > ; external_link : ZodOptional < ZodString > ; image : ZodOptional < ZodString > ; name : ZodString ; recipients : ZodArray < ZodObject < ( { address: ZodUnion<[ZodType<string, ZodTypeDef, string>, ZodType<`0x${string}`, ZodTypeDef, `${string}.eth` | `${string}.cb.id`>]>; sharesBps: ZodNumber; }) , "strip" , ZodTypeAny , ( { address: string; sharesBps: number; }) , ( { address: string; sharesBps: number; }) > , "many" > ; social_urls : ZodOptional < ZodRecord < ZodString , ZodString > > ; } , ZodUnknown , "strip" > >
Create custom royalty splits to distribute funds.
Example