Docs

VoteContractSchema

let VoteContractSchema: {
  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;
      proposal_token_threshold: ZodDefault<
        ZodEffects<
          ZodEffects<
            ZodUnion<
              [
                ZodString,
                ZodNumber,
                ZodBigInt,
                ZodType<BigNumber, ZodTypeDef, BigNumber>,
              ]
            >,
            BigNumber,
            string | number | bigint | BigNumber
          >,
          string,
          string | number | bigint | BigNumber
        >
      >;
      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"
        >
      >;
      voting_delay_in_blocks: ZodDefault<ZodNumber>;
      voting_period_in_blocks: ZodDefault<ZodNumber>;
      voting_quorum_fraction: ZodDefault<ZodNumber>;
      voting_token_address: ZodUnion<
        [
          ZodType<string, ZodTypeDef, string>,
          ZodType<
            `0x${string}`,
            ZodTypeDef,
            `${string}.eth` | `${string}.cb.id`
          >,
        ]
      >;
    },
    "strip",
    ZodTypeAny,
    {
      app_uri?: string;
      description?: string;
      external_link?: string;
      image?: any;
      name: string;
      proposal_token_threshold: string;
      social_urls?: Record<string, string>;
      trusted_forwarders: string[];
      voting_delay_in_blocks: number;
      voting_period_in_blocks: number;
      voting_quorum_fraction: number;
      voting_token_address: string;
    },
    {
      app_uri?: string;
      description?: string;
      external_link?: string;
      image?: any;
      name: string;
      proposal_token_threshold?: string | number | bigint | BigNumber;
      social_urls?: Record<string, string>;
      trusted_forwarders?: string[];
      voting_delay_in_blocks?: number;
      voting_period_in_blocks?: number;
      voting_quorum_fraction?: number;
      voting_token_address: 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;
      proposal_token_threshold: ZodDefault<
        ZodEffects<
          ZodEffects<
            ZodUnion<
              [
                ZodString,
                ZodNumber,
                ZodBigInt,
                ZodType<BigNumber, ZodTypeDef, BigNumber>,
              ]
            >,
            BigNumber,
            string | number | bigint | BigNumber
          >,
          string,
          string | number | bigint | BigNumber
        >
      >;
      social_urls: ZodOptional<ZodRecord<ZodString, ZodString>>;
      voting_delay_in_blocks: ZodDefault<ZodNumber>;
      voting_period_in_blocks: ZodDefault<ZodNumber>;
      voting_quorum_fraction: ZodDefault<ZodNumber>;
      voting_token_address: ZodUnion<
        [
          ZodType<string, ZodTypeDef, string>,
          ZodType<
            `0x${string}`,
            ZodTypeDef,
            `${string}.eth` | `${string}.cb.id`
          >,
        ]
      >;
    },
    "strip",
    ZodTypeAny,
    {
      app_uri?: string;
      description?: string;
      external_link?: string;
      image?: any;
      name: string;
      proposal_token_threshold: string;
      social_urls?: Record<string, string>;
      voting_delay_in_blocks: number;
      voting_period_in_blocks: number;
      voting_quorum_fraction: number;
      voting_token_address: string;
    },
    {
      app_uri?: string;
      description?: string;
      external_link?: string;
      image?: any;
      name: string;
      proposal_token_threshold?: string | number | bigint | BigNumber;
      social_urls?: Record<string, string>;
      voting_delay_in_blocks?: number;
      voting_period_in_blocks?: number;
      voting_quorum_fraction?: number;
      voting_token_address: string;
    }
  >;
  output: ZodObject<
    {
      app_uri: ZodOptional<ZodString>;
      description: ZodOptional<ZodString>;
      external_link: ZodOptional<ZodString>;
      image: ZodOptional<ZodString>;
      name: ZodString;
      proposal_token_threshold: ZodEffects<
        ZodUnion<
          [
            ZodString,
            ZodNumber,
            ZodBigInt,
            ZodType<BigNumber, ZodTypeDef, BigNumber>,
          ]
        >,
        BigNumber,
        string | number | bigint | BigNumber
      >;
      social_urls: ZodOptional<ZodRecord<ZodString, ZodString>>;
      voting_delay_in_blocks: ZodDefault<ZodNumber>;
      voting_period_in_blocks: ZodDefault<ZodNumber>;
      voting_quorum_fraction: ZodDefault<ZodNumber>;
      voting_token_address: ZodUnion<
        [
          ZodType<string, ZodTypeDef, string>,
          ZodType<
            `0x${string}`,
            ZodTypeDef,
            `${string}.eth` | `${string}.cb.id`
          >,
        ]
      >;
    },
    "strip",
    ZodTypeAny,
    {
      app_uri?: string;
      description?: string;
      external_link?: string;
      image?: string;
      name: string;
      proposal_token_threshold: BigNumber;
      social_urls?: Record<string, string>;
      voting_delay_in_blocks: number;
      voting_period_in_blocks: number;
      voting_quorum_fraction: number;
      voting_token_address: string;
    },
    {
      app_uri?: string;
      description?: string;
      external_link?: string;
      image?: string;
      name: string;
      proposal_token_threshold: Object;
      social_urls?: Record<string, string>;
      voting_delay_in_blocks?: number;
      voting_period_in_blocks?: number;
      voting_quorum_fraction?: number;
      voting_token_address: string;
    }
  >;
};