Docs

SplitsContractSchema

let SplitsContractSchema: {
  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"
    >
  >;
};