import { S as PHDocument, i as Action, x as PHBaseState } from "./index-otPBmxzq.js";

//#region document-models/grant-application/v1/gen/schema/types.d.ts
type Maybe<T> = T | null | undefined;
type InputMaybe<T> = T | null | undefined;
type Exact<T extends {
  [key: string]: unknown;
}> = { [K in keyof T]: T[K] };
type MakeOptional<T, K extends keyof T> = Omit<T, K> & { [SubKey in K]?: Maybe<T[SubKey]> };
type MakeMaybe<T, K extends keyof T> = Omit<T, K> & { [SubKey in K]: Maybe<T[SubKey]> };
type MakeEmpty<T extends {
  [key: string]: unknown;
}, K extends keyof T> = { [_ in K]?: never };
type Incremental<T> = T | { [P in keyof T]?: P extends " $fragmentName" | "__typename" ? T[P] : never };
/** All built-in and custom scalars, mapped to their actual values */
type Scalars = {
  ID: {
    input: string;
    output: string;
  };
  String: {
    input: string;
    output: string;
  };
  Boolean: {
    input: boolean;
    output: boolean;
  };
  Int: {
    input: number;
    output: number;
  };
  Float: {
    input: number;
    output: number;
  };
  Address: {
    input: `${string}:0x${string}`;
    output: `${string}:0x${string}`;
  };
  Amount: {
    input: {
      unit?: string;
      value?: number;
    };
    output: {
      unit?: string;
      value?: number;
    };
  };
  Amount_Crypto: {
    input: {
      unit: string;
      value: string;
    };
    output: {
      unit: string;
      value: string;
    };
  };
  Amount_Currency: {
    input: {
      unit: string;
      value: string;
    };
    output: {
      unit: string;
      value: string;
    };
  };
  Amount_Fiat: {
    input: {
      unit: string;
      value: number;
    };
    output: {
      unit: string;
      value: number;
    };
  };
  Amount_Money: {
    input: number;
    output: number;
  };
  Amount_Percentage: {
    input: number;
    output: number;
  };
  Amount_Tokens: {
    input: number;
    output: number;
  };
  Attachment: {
    input: string;
    output: string;
  };
  Currency: {
    input: string;
    output: string;
  };
  Date: {
    input: string;
    output: string;
  };
  DateTime: {
    input: string;
    output: string;
  };
  EmailAddress: {
    input: string;
    output: string;
  };
  EthereumAddress: {
    input: string;
    output: string;
  };
  OID: {
    input: string;
    output: string;
  };
  OLabel: {
    input: string;
    output: string;
  };
  PHID: {
    input: string;
    output: string;
  };
  URL: {
    input: string;
    output: string;
  };
  Unknown: {
    input: unknown;
    output: unknown;
  };
  Upload: {
    input: File;
    output: File;
  };
};
type AddAppSocialInput = {
  id: Scalars["OID"]["input"];
  platform: Scalars["String"]["input"];
  url: Scalars["URL"]["input"];
};
type AddFundsApprovedInput = {
  amount: Scalars["Amount"]["input"];
  id: Scalars["OID"]["input"];
};
type AddFundsAskedInput = {
  amount: Scalars["Amount"]["input"];
  id: Scalars["OID"]["input"];
};
type AppFundingAmount = {
  amount: Scalars["Amount"]["output"];
  id: Scalars["OID"]["output"];
};
type AppSocial = {
  id: Scalars["OID"]["output"];
  platform: Scalars["String"]["output"];
  url: Scalars["URL"]["output"];
};
type AppSubmitter = {
  identifier: Scalars["String"]["output"];
  submittedAt: Scalars["DateTime"]["output"];
  submitterType: AppSubmitterType;
};
type AppSubmitterType = "AUTOMATION" | "COMMUNITY" | "VERIFIED_PUBLISHER";
type ApplicationStatus = "approved" | "completed" | "funded" | "in_review" | "pending" | "rejected";
type ApproveApplicationInput = {
  approvedAt: Scalars["DateTime"]["input"];
  reviewerDid: Scalars["String"]["input"];
};
type ConditionallyApproveInput = {
  approvedAt: Scalars["DateTime"]["input"];
  conditions: Scalars["String"]["input"];
  reviewerDid: Scalars["String"]["input"];
};
type GrantApplicationState = {
  applicationCompletionRate: Maybe<Scalars["Float"]["output"]>;
  contentURI: Maybe<Scalars["URL"]["output"]>;
  createdAt: Maybe<Scalars["DateTime"]["output"]>;
  discussionsTo: Maybe<Scalars["URL"]["output"]>;
  extensions: Maybe<Scalars["String"]["output"]>;
  feedbackNotes: Maybe<Scalars["String"]["output"]>;
  fundsApproved: Array<AppFundingAmount>;
  fundsApprovedInUSD: Maybe<Scalars["Amount_Fiat"]["output"]>;
  fundsAsked: Array<AppFundingAmount>;
  fundsAskedInUSD: Maybe<Scalars["Amount_Fiat"]["output"]>;
  grantPoolId: Maybe<Scalars["PHID"]["output"]>;
  grantPoolName: Maybe<Scalars["String"]["output"]>;
  grantPoolsURI: Maybe<Scalars["URL"]["output"]>;
  isInactive: Scalars["Boolean"]["output"];
  licenseURI: Maybe<Scalars["URL"]["output"]>;
  paymentTerm: Maybe<PaymentTerm>;
  payoutAddress: Maybe<PayoutAddress>;
  payouts: Array<Payout>;
  projectId: Maybe<Scalars["PHID"]["output"]>;
  projectName: Maybe<Scalars["String"]["output"]>;
  projectsURI: Maybe<Scalars["URL"]["output"]>;
  reviewStage: ReviewStage;
  reviewedAt: Maybe<Scalars["DateTime"]["output"]>;
  reviewedBy: Maybe<Scalars["String"]["output"]>;
  revisionCount: Scalars["Int"]["output"];
  socials: Array<AppSocial>;
  status: ApplicationStatus;
  submittedAt: Maybe<Scalars["DateTime"]["output"]>;
  submitter: Maybe<AppSubmitter>;
};
type MarkCompletedInput = {
  completedAt: Scalars["DateTime"]["input"];
};
type MarkRevisedInput = {
  revisedAt: Scalars["DateTime"]["input"];
};
type OpenApplicationInput = {
  openedAt: Scalars["DateTime"]["input"];
};
type PaymentTerm = "ESCROW" | "MILESTONE_BASED_ADVANCE_PAYMENT" | "MILESTONE_BASED_FIXED_PRICE" | "RETAINER_BASED" | "VARIABLE_COST";
type Payout = {
  id: Scalars["OID"]["output"];
  payoutType: Scalars["String"]["output"];
  proof: Maybe<Scalars["String"]["output"]>;
  timestamp: Scalars["DateTime"]["output"];
  value: Scalars["String"]["output"];
};
type PayoutAddress = {
  addressType: Scalars["String"]["output"];
  value: Scalars["String"]["output"];
};
type RecordPayoutInput = {
  id: Scalars["OID"]["input"];
  payoutType: Scalars["String"]["input"];
  proof?: InputMaybe<Scalars["String"]["input"]>;
  timestamp: Scalars["DateTime"]["input"];
  value: Scalars["String"]["input"];
};
type RejectApplicationInput = {
  reason: Scalars["String"]["input"];
  rejectedAt: Scalars["DateTime"]["input"];
  reviewerDid: Scalars["String"]["input"];
};
type RemoveAppSocialInput = {
  id: Scalars["OID"]["input"];
};
type RemoveFundsAskedInput = {
  id: Scalars["OID"]["input"];
};
type RequestRevisionInput = {
  feedbackNotes: Scalars["String"]["input"];
  requestedAt: Scalars["DateTime"]["input"];
};
type ReviewStage = "APPROVED" | "COMPLETED" | "CONDITIONALLY_APPROVED" | "DRAFT" | "FUNDED" | "NEEDS_REVISION" | "OPENED" | "REJECTED" | "REVISED" | "SUBMITTED" | "UNDER_REVIEW" | "WITHDRAWN";
type SetAppContentUriInput = {
  contentURI?: InputMaybe<Scalars["URL"]["input"]>;
};
type SetAppExtensionsInput = {
  extensions?: InputMaybe<Scalars["String"]["input"]>;
};
type SetAppLicenseUriInput = {
  licenseURI?: InputMaybe<Scalars["URL"]["input"]>;
};
type SetCompletionRateInput = {
  applicationCompletionRate?: InputMaybe<Scalars["Float"]["input"]>;
};
type SetCreatedAtInput = {
  createdAt: Scalars["DateTime"]["input"];
};
type SetDiscussionsToInput = {
  discussionsTo?: InputMaybe<Scalars["URL"]["input"]>;
};
type SetFundsApprovedUsdInput = {
  fundsApprovedInUSD?: InputMaybe<Scalars["Amount_Fiat"]["input"]>;
};
type SetFundsAskedUsdInput = {
  fundsAskedInUSD?: InputMaybe<Scalars["Amount_Fiat"]["input"]>;
};
type SetIsInactiveInput = {
  isInactive: Scalars["Boolean"]["input"];
};
type SetPaymentTermInput = {
  paymentTerm: PaymentTerm;
};
type SetPayoutAddressInput = {
  addressType: Scalars["String"]["input"];
  value: Scalars["String"]["input"];
};
type SetPoolRefInput = {
  grantPoolId: Scalars["PHID"]["input"];
  grantPoolName: Scalars["String"]["input"];
  grantPoolsURI: Scalars["URL"]["input"];
};
type SetProjectRefInput = {
  projectId: Scalars["PHID"]["input"];
  projectName: Scalars["String"]["input"];
  projectsURI: Scalars["URL"]["input"];
};
type StartReviewInput = {
  reviewerDid: Scalars["String"]["input"];
  startedAt: Scalars["DateTime"]["input"];
};
type SubmitApplicationInput = {
  identifier: Scalars["String"]["input"];
  submittedAt: Scalars["DateTime"]["input"];
  submitterType: AppSubmitterType;
};
type WithdrawApplicationInput = {
  reason?: InputMaybe<Scalars["String"]["input"]>;
  withdrawnAt: Scalars["DateTime"]["input"];
};
//#endregion
//#region document-models/grant-application/v1/gen/types.d.ts
type GrantApplicationLocalState = Record<PropertyKey, never>;
type GrantApplicationPHState = PHBaseState & {
  global: GrantApplicationState;
  local: GrantApplicationLocalState;
};
type GrantApplicationDocument = PHDocument<GrantApplicationPHState>;
//#endregion
//#region document-models/grant-application/v1/gen/metadata/actions.d.ts
type SetPoolRefAction = Action & {
  type: "SET_POOL_REF";
  input: SetPoolRefInput;
};
type SetProjectRefAction = Action & {
  type: "SET_PROJECT_REF";
  input: SetProjectRefInput;
};
type SetCreatedAtAction = Action & {
  type: "SET_CREATED_AT";
  input: SetCreatedAtInput;
};
type SetAppContentUriAction = Action & {
  type: "SET_APP_CONTENT_URI";
  input: SetAppContentUriInput;
};
type SetDiscussionsToAction = Action & {
  type: "SET_DISCUSSIONS_TO";
  input: SetDiscussionsToInput;
};
type SetAppLicenseUriAction = Action & {
  type: "SET_APP_LICENSE_URI";
  input: SetAppLicenseUriInput;
};
type SetIsInactiveAction = Action & {
  type: "SET_IS_INACTIVE";
  input: SetIsInactiveInput;
};
type SetCompletionRateAction = Action & {
  type: "SET_COMPLETION_RATE";
  input: SetCompletionRateInput;
};
type SetAppExtensionsAction = Action & {
  type: "SET_APP_EXTENSIONS";
  input: SetAppExtensionsInput;
};
type AddAppSocialAction = Action & {
  type: "ADD_APP_SOCIAL";
  input: AddAppSocialInput;
};
type RemoveAppSocialAction = Action & {
  type: "REMOVE_APP_SOCIAL";
  input: RemoveAppSocialInput;
};
type GrantApplicationMetadataAction = SetPoolRefAction | SetProjectRefAction | SetCreatedAtAction | SetAppContentUriAction | SetDiscussionsToAction | SetAppLicenseUriAction | SetIsInactiveAction | SetCompletionRateAction | SetAppExtensionsAction | AddAppSocialAction | RemoveAppSocialAction;
//#endregion
//#region document-models/grant-application/v1/gen/funding/actions.d.ts
type AddFundsAskedAction = Action & {
  type: "ADD_FUNDS_ASKED";
  input: AddFundsAskedInput;
};
type RemoveFundsAskedAction = Action & {
  type: "REMOVE_FUNDS_ASKED";
  input: RemoveFundsAskedInput;
};
type SetFundsAskedUsdAction = Action & {
  type: "SET_FUNDS_ASKED_USD";
  input: SetFundsAskedUsdInput;
};
type AddFundsApprovedAction = Action & {
  type: "ADD_FUNDS_APPROVED";
  input: AddFundsApprovedInput;
};
type SetFundsApprovedUsdAction = Action & {
  type: "SET_FUNDS_APPROVED_USD";
  input: SetFundsApprovedUsdInput;
};
type SetPayoutAddressAction = Action & {
  type: "SET_PAYOUT_ADDRESS";
  input: SetPayoutAddressInput;
};
type SetPaymentTermAction = Action & {
  type: "SET_PAYMENT_TERM";
  input: SetPaymentTermInput;
};
type GrantApplicationFundingAction = AddFundsAskedAction | RemoveFundsAskedAction | SetFundsAskedUsdAction | AddFundsApprovedAction | SetFundsApprovedUsdAction | SetPayoutAddressAction | SetPaymentTermAction;
//#endregion
//#region document-models/grant-application/v1/gen/review/actions.d.ts
type SubmitApplicationAction = Action & {
  type: "SUBMIT_APPLICATION";
  input: SubmitApplicationInput;
};
type OpenApplicationAction = Action & {
  type: "OPEN_APPLICATION";
  input: OpenApplicationInput;
};
type StartReviewAction = Action & {
  type: "START_REVIEW";
  input: StartReviewInput;
};
type RequestRevisionAction = Action & {
  type: "REQUEST_REVISION";
  input: RequestRevisionInput;
};
type MarkRevisedAction = Action & {
  type: "MARK_REVISED";
  input: MarkRevisedInput;
};
type ApproveApplicationAction = Action & {
  type: "APPROVE_APPLICATION";
  input: ApproveApplicationInput;
};
type ConditionallyApproveAction = Action & {
  type: "CONDITIONALLY_APPROVE";
  input: ConditionallyApproveInput;
};
type RejectApplicationAction = Action & {
  type: "REJECT_APPLICATION";
  input: RejectApplicationInput;
};
type WithdrawApplicationAction = Action & {
  type: "WITHDRAW_APPLICATION";
  input: WithdrawApplicationInput;
};
type GrantApplicationReviewAction = SubmitApplicationAction | OpenApplicationAction | StartReviewAction | RequestRevisionAction | MarkRevisedAction | ApproveApplicationAction | ConditionallyApproveAction | RejectApplicationAction | WithdrawApplicationAction;
//#endregion
//#region document-models/grant-application/v1/gen/payouts/actions.d.ts
type RecordPayoutAction = Action & {
  type: "RECORD_PAYOUT";
  input: RecordPayoutInput;
};
type MarkCompletedAction = Action & {
  type: "MARK_COMPLETED";
  input: MarkCompletedInput;
};
type GrantApplicationPayoutsAction = RecordPayoutAction | MarkCompletedAction;
//#endregion
//#region document-models/grant-application/v1/gen/actions.d.ts
type GrantApplicationAction = GrantApplicationMetadataAction | GrantApplicationFundingAction | GrantApplicationReviewAction | GrantApplicationPayoutsAction;
//#endregion
export { MakeMaybe as $, SetCreatedAtAction as A, WithdrawApplicationInput as At, AddFundsAskedInput as B, AddAppSocialAction as C, SetIsInactiveInput as Ct, SetAppExtensionsAction as D, SetProjectRefInput as Dt, SetAppContentUriAction as E, SetPoolRefInput as Et, GrantApplicationDocument as F, ApplicationStatus as G, AppSocial as H, GrantApplicationLocalState as I, Exact as J, ApproveApplicationInput as K, GrantApplicationPHState as L, SetIsInactiveAction as M, SetPoolRefAction as N, SetAppLicenseUriAction as O, StartReviewInput as Ot, SetProjectRefAction as P, MakeEmpty as Q, AddAppSocialInput as R, SetPayoutAddressAction as S, SetFundsAskedUsdInput as St, RemoveAppSocialAction as T, SetPayoutAddressInput as Tt, AppSubmitter as U, AppFundingAmount as V, AppSubmitterType as W, Incremental as X, GrantApplicationState as Y, InputMaybe as Z, GrantApplicationFundingAction as _, SetAppLicenseUriInput as _t, ApproveApplicationAction as a, PaymentTerm as at, SetFundsAskedUsdAction as b, SetDiscussionsToInput as bt, MarkRevisedAction as c, RecordPayoutInput as ct, RequestRevisionAction as d, RemoveFundsAskedInput as dt, MakeOptional as et, StartReviewAction as f, RequestRevisionInput as ft, AddFundsAskedAction as g, SetAppExtensionsInput as gt, AddFundsApprovedAction as h, SetAppContentUriInput as ht, RecordPayoutAction as i, OpenApplicationInput as it, SetDiscussionsToAction as j, SetCompletionRateAction as k, SubmitApplicationInput as kt, OpenApplicationAction as l, RejectApplicationInput as lt, WithdrawApplicationAction as m, Scalars as mt, GrantApplicationPayoutsAction as n, MarkRevisedInput as nt, ConditionallyApproveAction as o, Payout as ot, SubmitApplicationAction as p, ReviewStage as pt, ConditionallyApproveInput as q, MarkCompletedAction as r, Maybe as rt, GrantApplicationReviewAction as s, PayoutAddress as st, GrantApplicationAction as t, MarkCompletedInput as tt, RejectApplicationAction as u, RemoveAppSocialInput as ut, RemoveFundsAskedAction as v, SetCompletionRateInput as vt, GrantApplicationMetadataAction as w, SetPaymentTermInput as wt, SetPaymentTermAction as x, SetFundsApprovedUsdInput as xt, SetFundsApprovedUsdAction as y, SetCreatedAtInput as yt, AddFundsApprovedInput as z };
//# sourceMappingURL=actions-GbaHpgIz.d.ts.map