import * as z from "zod/v4-mini"; import * as discriminatedUnionTypes from "../../types/discriminated-union.js"; import { ClosedEnum, OpenEnum } from "../../types/enums.js"; import { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdk-validation-error.js"; /** * Audio */ export type DataAudio = { type: "audio"; /** * The URL of the audio content */ url: string; }; /** * Video */ export type DataVideo = { type: "video"; /** * A public URL of the video content */ url: string; }; /** * Image */ export type DataImage = { type: "image"; /** * A public URL of the image content. Either url or data must be provided. */ url?: string | undefined; /** * Base64-encoded image data. Either url or data must be provided. Note: base64 images are not stored and will not appear in the review queue. */ data?: string | undefined; }; /** * Text */ export type DataText = { type: "text"; /** * The content text */ text: string; }; export type ContentLeafRequest = DataText | DataImage | DataVideo | DataAudio; /** * Object */ export type ObjectT = { type: "object"; /** * Values in the object. Can be mixed content types. */ data: { [k: string]: DataText | DataImage | DataVideo | DataAudio; }; }; /** * Audio */ export type AudioRequest = { type: "audio"; /** * The URL of the audio content */ url: string; }; /** * Video */ export type VideoRequest = { type: "video"; /** * A public URL of the video content */ url: string; }; /** * Image */ export type ImageRequest = { type: "image"; /** * A public URL of the image content. Either url or data must be provided. */ url?: string | undefined; /** * Base64-encoded image data. Either url or data must be provided. Note: base64 images are not stored and will not appear in the review queue. */ data?: string | undefined; }; /** * Text */ export type TextRequest = { type: "text"; /** * The content text */ text: string; }; /** * The content sent for moderation */ export type ContentRequest = TextRequest | ImageRequest | VideoRequest | AudioRequest | ObjectT; /** * The meta type of content being moderated */ export declare const MetaType: { readonly Profile: "profile"; readonly Message: "message"; readonly Post: "post"; readonly Comment: "comment"; readonly Event: "event"; readonly Product: "product"; readonly Review: "review"; readonly Voice: "voice"; readonly Other: "other"; }; /** * The meta type of content being moderated */ export type MetaType = ClosedEnum; /** * Your recommendation for the content: allow, review, or reject. */ export declare const ActionRequest: { readonly Review: "review"; readonly Allow: "allow"; readonly Reject: "reject"; }; /** * Your recommendation for the content: allow, review, or reject. */ export type ActionRequest = ClosedEnum; /** * How your recommendation combines with ours. Defaults to 'escalate', which only applies it when stricter than ours; 'override' replaces ours outright. */ export declare const Behavior: { readonly Override: "override"; readonly Escalate: "escalate"; }; /** * How your recommendation combines with ours. Defaults to 'escalate', which only applies it when stricter than ours; 'override' replaces ours outright. */ export type Behavior = ClosedEnum; /** * A recommendation from your own client-side flagging (e.g. a banned-IP list or a third-party tool). Feeds the rules engine and can escalate or override the recommended action. Does not change whether our analysis flagged the content. */ export type ClientAction = { /** * Your recommendation for the content: allow, review, or reject. */ action: ActionRequest; /** * How your recommendation combines with ours. Defaults to 'escalate', which only applies it when stricter than ours; 'override' replaces ours outright. */ behavior?: Behavior | undefined; /** * Where your recommendation came from, e.g. "banned-ip". */ source?: string | undefined; /** * A human-readable explanation for your recommendation. */ reason?: string | undefined; }; export type Guideline = { flag: boolean; threshold?: number | undefined; id: "guideline"; instructions: string; guidelineKey: string; }; export type URLRisk = { flag: boolean; threshold?: number | undefined; id: "url_risk"; /** * IDs of wordlists whose entries are treated as allowed URL domains. Matches short-circuit the risk model and are never flagged. */ allowlistWordlistIds?: Array | undefined; /** * IDs of wordlists whose entries are treated as blocked URL domains. Matches short-circuit the risk model and are always flagged. Blocklists take precedence over allowlists. */ blocklistWordlistIds?: Array | undefined; /** * When true, any URL detected as a free link shortener (bit.ly, t.co, tinyurl, etc.) is always flagged regardless of risk score. Allowlist matches still win. */ flagLinkShorteners?: boolean | undefined; }; export type Entities2 = { enable?: boolean | undefined; flag?: boolean | undefined; shouldMask?: boolean | undefined; mask?: string | undefined; [additionalProperties: string]: unknown; }; export type URLMasking = { id: "url"; entities: { [k: string]: Entities2; }; }; export type Entities1 = { enable?: boolean | undefined; flag?: boolean | undefined; shouldMask?: boolean | undefined; mask?: string | undefined; [additionalProperties: string]: unknown; }; export type PIIMasking = { id: "pii"; entities: { [k: string]: Entities1; }; }; export type SignalsRequest = { flag?: boolean | undefined; }; export type UnicodeSpoofing = { flag: boolean; threshold?: number | undefined; id: "unicode_spoofing"; /** * Per-signal flag toggles. Omitted spoofing signals are enabled; encoding_damage defaults to off because decode damage (U+FFFD) marks a broken pipeline, not an attack. A disabled signal is still detected and reported as a label, but does not by itself flag the policy. */ signals?: { [k: string]: SignalsRequest; } | undefined; }; export type CodeAbuse = { flag: boolean; threshold?: number | undefined; id: "code_abuse"; }; export type Extremism = { flag: boolean; threshold?: number | undefined; id: "extremism"; }; export type Promotion = { flag: boolean; threshold?: number | undefined; id: "promotion"; }; export type Weapons = { flag: boolean; threshold?: number | undefined; id: "weapons"; }; export type Tobacco = { flag: boolean; threshold?: number | undefined; id: "tobacco"; }; export type Gambling = { flag: boolean; threshold?: number | undefined; id: "gambling"; }; export type Drugs = { flag: boolean; threshold?: number | undefined; id: "drugs"; }; export type Alcohol = { flag: boolean; threshold?: number | undefined; id: "alcohol"; }; export type IllegalTrade = { flag: boolean; threshold?: number | undefined; id: "illegal_trade"; }; export type ChannelCircumvention = { flag: boolean; threshold?: number | undefined; id: "channel_circumvent"; }; export type SexualSolicitation = { flag: boolean; threshold?: number | undefined; id: "sexual_solicitation"; }; export type Threat = { flag: boolean; threshold?: number | undefined; id: "threat"; }; export type Religion = { flag: boolean; threshold?: number | undefined; id: "religion"; }; export type Political = { flag: boolean; threshold?: number | undefined; id: "political"; }; export type SelfPromotion = { flag: boolean; threshold?: number | undefined; id: "self_promotion"; }; /** * Flag images that contain "at least" or "fewer than" the configured number of faces. Defaults to at_least. */ export declare const Comparator: { readonly AtLeast: "at_least"; readonly FewerThan: "fewer_than"; }; /** * Flag images that contain "at least" or "fewer than" the configured number of faces. Defaults to at_least. */ export type Comparator = ClosedEnum; export type FaceDetection = { flag: boolean; threshold?: number | undefined; id: "face_detection"; /** * Flag images that contain "at least" or "fewer than" the configured number of faces. Defaults to at_least. */ comparator?: Comparator | undefined; /** * Number of faces the comparator applies to. Defaults to 1, so the default rule flags any image containing a face. */ count?: number | undefined; }; export type LowQualityContent = { flag: boolean; threshold?: number | undefined; id: "low_quality"; /** * Flag content with fewer than this many words as low-effort. Defaults to 3. Set to disable by omitting. */ minWords?: number | undefined; }; export type Spam = { flag: boolean; threshold?: number | undefined; id: "spam"; }; export type SelfHarm = { flag: boolean; threshold?: number | undefined; id: "self_harm"; }; export type Violence = { flag: boolean; threshold?: number | undefined; id: "violence"; }; export type Profanity = { flag: boolean; threshold?: number | undefined; id: "profanity"; }; export type SexualMinors = { flag: boolean; threshold?: number | undefined; id: "sexual_minors"; }; export type Sexual = { flag: boolean; threshold?: number | undefined; id: "sexual"; }; export type Crypto = { flag: boolean; threshold?: number | undefined; id: "crypto"; }; export type Adult = { flag: boolean; threshold?: number | undefined; id: "adult"; }; export type Cannabis = { flag: boolean; threshold?: number | undefined; id: "cannabis"; }; export type IllicitGambling = { flag: boolean; threshold?: number | undefined; id: "illicit_gambling"; }; export type IllicitTobacco = { flag: boolean; threshold?: number | undefined; id: "illicit_tobacco"; }; export type IllicitFirearms = { flag: boolean; threshold?: number | undefined; id: "illicit_firearms"; }; export type IllicitAlcohol = { flag: boolean; threshold?: number | undefined; id: "illicit_alcohol"; }; export type IllicitDrugs = { flag: boolean; threshold?: number | undefined; id: "illicit_drugs"; }; export type Illicit = { flag: boolean; threshold?: number | undefined; id: "illicit"; }; export type Hate = { flag: boolean; threshold?: number | undefined; id: "hate"; }; export type PersonalInformation = { flag: boolean; threshold?: number | undefined; id: "personal_information"; }; export type Toxicity = { flag: boolean; threshold?: number | undefined; id: "toxicity"; }; export type PolicyRequest = Toxicity | PersonalInformation | Hate | Illicit | IllicitDrugs | IllicitAlcohol | IllicitFirearms | IllicitTobacco | IllicitGambling | Cannabis | Adult | Crypto | Sexual | SexualMinors | Profanity | Violence | SelfHarm | Spam | LowQualityContent | FaceDetection | SelfPromotion | Political | Religion | Threat | SexualSolicitation | ChannelCircumvention | IllegalTrade | Alcohol | Drugs | Gambling | Tobacco | Weapons | Promotion | Extremism | CodeAbuse | UnicodeSpoofing | PIIMasking | URLMasking | URLRisk | Guideline; export type SubmitContentRequestBody = { /** * The content sent for moderation */ content: TextRequest | ImageRequest | VideoRequest | AudioRequest | ObjectT; /** * Unix timestamp (in milliseconds) of when the content was created. Use if content is not submitted in real-time. */ timestamp?: number | undefined; /** * Provide a channel ID or key. Will use the project's default channel if not provided. */ channel?: string | undefined; /** * The unique ID of the content in your database. */ contentId?: string | undefined; /** * The meta type of content being moderated */ metaType?: MetaType | undefined; /** * The author of the content. */ authorId?: string | undefined; /** * For example the ID of a chat room or a post */ conversationId?: string | undefined; /** * Any metadata you want to store with the content */ metadata?: { [k: string]: any; } | undefined; /** * A recommendation from your own client-side flagging (e.g. a banned-IP list or a third-party tool). Feeds the rules engine and can escalate or override the recommended action. Does not change whether our analysis flagged the content. */ clientAction?: ClientAction | undefined; /** * Do not store the content. The content won't enter the review queue */ doNotStore?: boolean | undefined; /** * (Enterprise) override the channel policies for this moderation request only. */ policies?: Array | undefined; }; export type SubmitContentRequest = { /** * The project to act on, when you call with an organization key. Optional when the organization has one project. A project key acts on its own project: naming another one is an error. */ projectId?: string | undefined; body: SubmitContentRequestBody; }; /** * Audio */ export type AudioResponse = { type: "audio"; /** * The URL of the audio content */ url: string; }; /** * Video */ export type VideoResponse = { type: "video"; /** * A public URL of the video content */ url: string; }; /** * Image */ export type ImageResponse = { type: "image"; /** * A public URL of the image content. Either url or data must be provided. */ url?: string | undefined; /** * Base64-encoded image data. Either url or data must be provided. Note: base64 images are not stored and will not appear in the review queue. */ data?: string | undefined; }; /** * Text */ export type TextResponse = { type: "text"; /** * The content text */ text: string; }; export type ContentLeafResponse = TextResponse | ImageResponse | VideoResponse | AudioResponse | discriminatedUnionTypes.Unknown<"type">; export type Modified = string | { [k: string]: any; } | { [k: string]: TextResponse | ImageResponse | VideoResponse | AudioResponse | discriminatedUnionTypes.Unknown<"type">; }; /** * Potentially modified content. */ export type ContentResponse = { /** * The unique identifier for the content. Either the contentId provided by you or an autogenerated ID. */ id: string; /** * Whether any values have been masked. */ masked: boolean; /** * Whether Unicode spoofing normalization rewrote the content — confusables folded to their Latin lookalikes, invisible characters and combining-mark abuse stripped. */ unicodeCleaned: boolean; /** * The modified content, if any. */ modified: string | { [k: string]: any; } | { [k: string]: TextResponse | ImageResponse | VideoResponse | AudioResponse | discriminatedUnionTypes.Unknown<"type">; } | null; /** * The transcribed text from audio content. Only present when audio moderation is used and transcript inclusion is enabled on the channel. */ transcript?: string | null | undefined; }; export type Block = { /** * The timestamp until which they are blocked if the author is suspended. */ until?: number | null | undefined; /** * The moderators reason why the author was blocked or suspended. */ reason?: string | null | undefined; }; /** * Current author status */ export declare const AuthorStatus: { readonly Enabled: "enabled"; readonly Suspended: "suspended"; readonly Blocked: "blocked"; }; /** * Current author status */ export type AuthorStatus = OpenEnum; export type TrustLevel = { /** * Author trust level (-1, 0, 1, 2, 3, or 4) */ level: number; /** * True if the trust level was set manually by a moderator */ manual: boolean; }; export type Author = { /** * Author ID in Moderation API */ id: string; /** * The author's ID from your system */ externalId?: string | null | undefined; /** * Block or suspension details, if applicable. Null if the author is enabled. */ block: Block | null; /** * Current author status */ status: AuthorStatus; trustLevel: TrustLevel; }; /** * The evaluation of the content after running the channel policies. */ export type Evaluation = { /** * Whether the content was flagged by any policy. */ flagged: boolean; /** * The probability that the content should be flagged. */ flagProbability: number; /** * The severity score of the content. A higher score indicates more severe content. */ severityScore: number; /** * Whether the content was flagged for Unicode spoofing. */ unicodeSpoofed?: boolean | undefined; /** * Whether the content would have been flagged by analyze-only policies (flag: false). */ shadowFlagged?: boolean | undefined; }; /** * The action to take based on the recommendation */ export declare const SubmitContentRecommendationAction: { readonly Review: "review"; readonly Allow: "allow"; readonly Reject: "reject"; }; /** * The action to take based on the recommendation */ export type SubmitContentRecommendationAction = OpenEnum; export declare const ReasonCodeEnum: { readonly SeverityReject: "severity_reject"; readonly SeverityReview: "severity_review"; readonly AuthorBlock: "author_block"; readonly DryRun: "dry_run"; readonly TrustedAllow: "trusted_allow"; readonly UntrustedSeverity: "untrusted_severity"; readonly RuleMatch: "rule_match"; readonly RuleDefault: "rule_default"; readonly RuleFallback: "rule_fallback"; readonly ClientOverride: "client_override"; readonly CasebookMatch: "casebook_match"; }; export type ReasonCodeEnum = OpenEnum; export type ReasonCode = ReasonCodeEnum | string; export type MatchedRule = { key: string; name: string; }; /** * The recommendation for the content based on the evaluation. */ export type Recommendation = { /** * The action to take based on the recommendation */ action: SubmitContentRecommendationAction; /** * Reason codes for the recommendation. Standard codes plus a `rule:` code identifying the rule that produced the action. Can be used to display a reason to the user. */ reasonCodes: Array; /** * Rules that matched during evaluation, if rules engine is active. */ matchedRules?: Array | undefined; }; /** * The ruling your past decisions point to for this content. */ export declare const Verdict: { readonly Allow: "allow"; readonly Reject: "reject"; }; /** * The ruling your past decisions point to for this content. */ export type Verdict = OpenEnum; export type Topic = { id: string; label: string; }; export type Casebook = { /** * The ruling your past decisions point to for this content. */ verdict: Verdict; /** * How close the nearest matching case is, from 0 to 1. 1 means the content is identical to something you have already decided. */ similarity: number; /** * How unanimous the matching cases are, from 0 to 1: the share of them that decided this way, ignoring how many there are. Always at least 0.8 when a ruling is returned — below that the casebook reports a disagreement instead of picking a side — so it tells you how clean the consensus was, and is not a threshold to re-apply yourself. */ agreement: number; /** * How strongly the casebook holds this ruling, from 0 to 1: the agreement scaled by how much evidence backs it, so a handful of close, recent cases outweighs one distant one. Older cases count for less, halving in weight roughly every 180 days. This is the number to use in rules when you want a strength condition. */ confidence: number; /** * How many of your past cases backed this ruling. */ caseCount: number; /** * The topic the closest matching case is filed under, or null when it has not been grouped into one yet. */ topic: Topic | null; }; export declare const Method: { readonly RegisteredDomainToken: "registered_domain_token"; readonly SubdomainToken: "subdomain_token"; }; export type Method = OpenEnum; export type BrandImpersonation = { brand: string; method: Method; }; /** * Observable properties of a URL (URL Risk only). Absent for allow/block list matches. */ export type SignalsResponse = { brandImpersonation: BrandImpersonation | null; hasSuspiciousCharacters: boolean; isLinkShortener: boolean; domainAgeDays: number | null; hasEmailSetup: boolean | null; redirectCount: number | null; finalUrl: string | null; botProtection: boolean | null; isReported: boolean; }; export type Match = { probability: number; match: string; span: Array; /** * Stable codes explaining why a URL was flagged (URL Risk only). */ reasons?: Array | undefined; /** * Observable properties of a URL (URL Risk only). Absent for allow/block list matches. */ signals?: SignalsResponse | undefined; /** * Sub-type of the entity match — e.g. the NER key (email, phone, name, …) for PII matches. Absent for URL Risk and wordlist matches where the type is already encoded in the parent label. */ entityType?: string | undefined; }; /** * Entity matcher policy. */ export type EntityMatcherOutput = { id: string; type: "entity_matcher"; probability: number; flagged: boolean; flaggedFields?: Array | undefined; matches: Array; }; export type SubmitContentLabel = { id: string; probability: number; flagged: boolean; shadowFlagged?: boolean | undefined; }; /** * Classifier policy. */ export type ClassifierOutput = { /** * The unique identifier for the classifier output. */ id: string; type: "classifier"; probability: number; flagged: boolean; /** * The keys of the flagged fields if submitting an object. */ flaggedFields?: Array | undefined; labels?: Array | undefined; /** * Optional structured data produced by the policy. For face detection: { count, faces: [{ confidence, gender, age }] }. */ data?: { [k: string]: any; } | undefined; }; /** * Policy output schema. */ export type PolicyResponse = ClassifierOutput | EntityMatcherOutput | discriminatedUnionTypes.Unknown<"type">; /** * Compassion insight. Identifies with or shows concern, empathy, or support for the feelings/emotions of others. */ export type CompassionInsight = { id: "compassion"; type: "insight"; probability: number; /** * Whether the content shows compassion. */ value: boolean | null; }; /** * Personal story insight. Includes a personal experience or story as a source of support for the statements made in the comment. */ export type PersonalStoryInsight = { id: "personal_story"; type: "insight"; probability: number; /** * Whether the content shows personal story. */ value: boolean | null; }; /** * Respect insight. Shows deference or appreciation to others, or acknowledges the validity of another person. */ export type RespectInsight = { id: "respect"; type: "insight"; probability: number; /** * Whether the content shows respect. */ value: boolean | null; }; /** * Curiosity insight. Attempts to clarify or ask follow-up questions to better understand another person or idea. */ export type CuriosityInsight = { id: "curiosity"; type: "insight"; probability: number; /** * Whether the content shows curiosity. */ value: boolean | null; }; /** * Language insight */ export type LanguageInsight = { id: "language"; type: "insight"; probability: number; value: string | null; }; export declare const Value: { readonly Positive: "positive"; readonly Neutral: "neutral"; readonly Negative: "negative"; }; export type Value = OpenEnum; /** * Positive and negative scored independently: mixed content scores high on both. Present whenever `value` is set. */ export type Scores = { /** * How positive the content is, 0 to 1. */ positive: number; /** * How negative the content is, 0 to 1. */ negative: number; }; /** * Sentiment insight */ export type SentimentInsight = { id: "sentiment"; type: "insight"; probability: number; value: Value | null; /** * Positive and negative scored independently: mixed content scores high on both. Present whenever `value` is set. */ scores?: Scores | undefined; }; export type Insight = SentimentInsight | LanguageInsight | CuriosityInsight | RespectInsight | PersonalStoryInsight | CompassionInsight | discriminatedUnionTypes.Unknown<"id">; export declare const MetaStatus: { readonly Success: "success"; readonly PartialSuccess: "partial_success"; }; export type MetaStatus = OpenEnum; /** * Metadata about the moderation request */ export type Meta = { status: MetaStatus; timestamp: number; /** * The unique key of the channel where the content was handled. Either the channel provided by you or automatically routed. */ channelKey: string; usage: number; processingTime?: string | undefined; }; export type ErrorT = { id: string; message: string; }; /** * Successful response */ export type SubmitContentResponse = { /** * Potentially modified content. */ content: ContentResponse; /** * The author of the content if your account has authors enabled. Requires you to send authorId when submitting content. */ author: Author | null; /** * The evaluation of the content after running the channel policies. */ evaluation: Evaluation; /** * The recommendation for the content based on the evaluation. */ recommendation: Recommendation; /** * What your casebook — the record of your past moderation decisions — found for this content, or null when it had nothing close enough to say, when the matching cases disagreed, or when casebook lookups are not switched on for this channel. Reports what the casebook found; whether it decided the outcome is shown in `recommendation`, where a higher-priority rule may have settled the item first. */ casebook: Casebook | null; /** * Results of all policies in the channel. Sorted by highest probability. */ policies: Array>; /** * Results of all insights enabled in the channel. */ insights: Array>; /** * Metadata about the moderation request */ meta: Meta; /** * Policies that had errors */ errors?: Array | undefined; }; /** @internal */ export type DataAudio$Outbound = { type: "audio"; url: string; }; /** @internal */ export declare const DataAudio$outboundSchema: z.ZodMiniType; export declare function dataAudioToJSON(dataAudio: DataAudio): string; /** @internal */ export type DataVideo$Outbound = { type: "video"; url: string; }; /** @internal */ export declare const DataVideo$outboundSchema: z.ZodMiniType; export declare function dataVideoToJSON(dataVideo: DataVideo): string; /** @internal */ export type DataImage$Outbound = { type: "image"; url?: string | undefined; data?: string | undefined; }; /** @internal */ export declare const DataImage$outboundSchema: z.ZodMiniType; export declare function dataImageToJSON(dataImage: DataImage): string; /** @internal */ export type DataText$Outbound = { type: "text"; text: string; }; /** @internal */ export declare const DataText$outboundSchema: z.ZodMiniType; export declare function dataTextToJSON(dataText: DataText): string; /** @internal */ export type ContentLeafRequest$Outbound = DataText$Outbound | DataImage$Outbound | DataVideo$Outbound | DataAudio$Outbound; /** @internal */ export declare const ContentLeafRequest$outboundSchema: z.ZodMiniType; export declare function contentLeafRequestToJSON(contentLeafRequest: ContentLeafRequest): string; /** @internal */ export type ObjectT$Outbound = { type: "object"; data: { [k: string]: DataText$Outbound | DataImage$Outbound | DataVideo$Outbound | DataAudio$Outbound; }; }; /** @internal */ export declare const ObjectT$outboundSchema: z.ZodMiniType; export declare function objectToJSON(objectT: ObjectT): string; /** @internal */ export type AudioRequest$Outbound = { type: "audio"; url: string; }; /** @internal */ export declare const AudioRequest$outboundSchema: z.ZodMiniType; export declare function audioRequestToJSON(audioRequest: AudioRequest): string; /** @internal */ export type VideoRequest$Outbound = { type: "video"; url: string; }; /** @internal */ export declare const VideoRequest$outboundSchema: z.ZodMiniType; export declare function videoRequestToJSON(videoRequest: VideoRequest): string; /** @internal */ export type ImageRequest$Outbound = { type: "image"; url?: string | undefined; data?: string | undefined; }; /** @internal */ export declare const ImageRequest$outboundSchema: z.ZodMiniType; export declare function imageRequestToJSON(imageRequest: ImageRequest): string; /** @internal */ export type TextRequest$Outbound = { type: "text"; text: string; }; /** @internal */ export declare const TextRequest$outboundSchema: z.ZodMiniType; export declare function textRequestToJSON(textRequest: TextRequest): string; /** @internal */ export type ContentRequest$Outbound = TextRequest$Outbound | ImageRequest$Outbound | VideoRequest$Outbound | AudioRequest$Outbound | ObjectT$Outbound; /** @internal */ export declare const ContentRequest$outboundSchema: z.ZodMiniType; export declare function contentRequestToJSON(contentRequest: ContentRequest): string; /** @internal */ export declare const MetaType$outboundSchema: z.ZodMiniEnum; /** @internal */ export declare const ActionRequest$outboundSchema: z.ZodMiniEnum; /** @internal */ export declare const Behavior$outboundSchema: z.ZodMiniEnum; /** @internal */ export type ClientAction$Outbound = { action: string; behavior?: string | undefined; source?: string | undefined; reason?: string | undefined; }; /** @internal */ export declare const ClientAction$outboundSchema: z.ZodMiniType; export declare function clientActionToJSON(clientAction: ClientAction): string; /** @internal */ export type Guideline$Outbound = { flag: boolean; threshold?: number | undefined; id: "guideline"; instructions: string; guidelineKey: string; }; /** @internal */ export declare const Guideline$outboundSchema: z.ZodMiniType; export declare function guidelineToJSON(guideline: Guideline): string; /** @internal */ export type URLRisk$Outbound = { flag: boolean; threshold?: number | undefined; id: "url_risk"; allowlistWordlistIds?: Array | undefined; blocklistWordlistIds?: Array | undefined; flagLinkShorteners?: boolean | undefined; }; /** @internal */ export declare const URLRisk$outboundSchema: z.ZodMiniType; export declare function urlRiskToJSON(urlRisk: URLRisk): string; /** @internal */ export type Entities2$Outbound = { enable?: boolean | undefined; flag?: boolean | undefined; shouldMask?: boolean | undefined; mask?: string | undefined; [additionalProperties: string]: unknown; }; /** @internal */ export declare const Entities2$outboundSchema: z.ZodMiniType; export declare function entities2ToJSON(entities2: Entities2): string; /** @internal */ export type URLMasking$Outbound = { id: "url"; entities: { [k: string]: Entities2$Outbound; }; }; /** @internal */ export declare const URLMasking$outboundSchema: z.ZodMiniType; export declare function urlMaskingToJSON(urlMasking: URLMasking): string; /** @internal */ export type Entities1$Outbound = { enable?: boolean | undefined; flag?: boolean | undefined; shouldMask?: boolean | undefined; mask?: string | undefined; [additionalProperties: string]: unknown; }; /** @internal */ export declare const Entities1$outboundSchema: z.ZodMiniType; export declare function entities1ToJSON(entities1: Entities1): string; /** @internal */ export type PIIMasking$Outbound = { id: "pii"; entities: { [k: string]: Entities1$Outbound; }; }; /** @internal */ export declare const PIIMasking$outboundSchema: z.ZodMiniType; export declare function piiMaskingToJSON(piiMasking: PIIMasking): string; /** @internal */ export type SignalsRequest$Outbound = { flag?: boolean | undefined; }; /** @internal */ export declare const SignalsRequest$outboundSchema: z.ZodMiniType; export declare function signalsRequestToJSON(signalsRequest: SignalsRequest): string; /** @internal */ export type UnicodeSpoofing$Outbound = { flag: boolean; threshold?: number | undefined; id: "unicode_spoofing"; signals?: { [k: string]: SignalsRequest$Outbound; } | undefined; }; /** @internal */ export declare const UnicodeSpoofing$outboundSchema: z.ZodMiniType; export declare function unicodeSpoofingToJSON(unicodeSpoofing: UnicodeSpoofing): string; /** @internal */ export type CodeAbuse$Outbound = { flag: boolean; threshold?: number | undefined; id: "code_abuse"; }; /** @internal */ export declare const CodeAbuse$outboundSchema: z.ZodMiniType; export declare function codeAbuseToJSON(codeAbuse: CodeAbuse): string; /** @internal */ export type Extremism$Outbound = { flag: boolean; threshold?: number | undefined; id: "extremism"; }; /** @internal */ export declare const Extremism$outboundSchema: z.ZodMiniType; export declare function extremismToJSON(extremism: Extremism): string; /** @internal */ export type Promotion$Outbound = { flag: boolean; threshold?: number | undefined; id: "promotion"; }; /** @internal */ export declare const Promotion$outboundSchema: z.ZodMiniType; export declare function promotionToJSON(promotion: Promotion): string; /** @internal */ export type Weapons$Outbound = { flag: boolean; threshold?: number | undefined; id: "weapons"; }; /** @internal */ export declare const Weapons$outboundSchema: z.ZodMiniType; export declare function weaponsToJSON(weapons: Weapons): string; /** @internal */ export type Tobacco$Outbound = { flag: boolean; threshold?: number | undefined; id: "tobacco"; }; /** @internal */ export declare const Tobacco$outboundSchema: z.ZodMiniType; export declare function tobaccoToJSON(tobacco: Tobacco): string; /** @internal */ export type Gambling$Outbound = { flag: boolean; threshold?: number | undefined; id: "gambling"; }; /** @internal */ export declare const Gambling$outboundSchema: z.ZodMiniType; export declare function gamblingToJSON(gambling: Gambling): string; /** @internal */ export type Drugs$Outbound = { flag: boolean; threshold?: number | undefined; id: "drugs"; }; /** @internal */ export declare const Drugs$outboundSchema: z.ZodMiniType; export declare function drugsToJSON(drugs: Drugs): string; /** @internal */ export type Alcohol$Outbound = { flag: boolean; threshold?: number | undefined; id: "alcohol"; }; /** @internal */ export declare const Alcohol$outboundSchema: z.ZodMiniType; export declare function alcoholToJSON(alcohol: Alcohol): string; /** @internal */ export type IllegalTrade$Outbound = { flag: boolean; threshold?: number | undefined; id: "illegal_trade"; }; /** @internal */ export declare const IllegalTrade$outboundSchema: z.ZodMiniType; export declare function illegalTradeToJSON(illegalTrade: IllegalTrade): string; /** @internal */ export type ChannelCircumvention$Outbound = { flag: boolean; threshold?: number | undefined; id: "channel_circumvent"; }; /** @internal */ export declare const ChannelCircumvention$outboundSchema: z.ZodMiniType; export declare function channelCircumventionToJSON(channelCircumvention: ChannelCircumvention): string; /** @internal */ export type SexualSolicitation$Outbound = { flag: boolean; threshold?: number | undefined; id: "sexual_solicitation"; }; /** @internal */ export declare const SexualSolicitation$outboundSchema: z.ZodMiniType; export declare function sexualSolicitationToJSON(sexualSolicitation: SexualSolicitation): string; /** @internal */ export type Threat$Outbound = { flag: boolean; threshold?: number | undefined; id: "threat"; }; /** @internal */ export declare const Threat$outboundSchema: z.ZodMiniType; export declare function threatToJSON(threat: Threat): string; /** @internal */ export type Religion$Outbound = { flag: boolean; threshold?: number | undefined; id: "religion"; }; /** @internal */ export declare const Religion$outboundSchema: z.ZodMiniType; export declare function religionToJSON(religion: Religion): string; /** @internal */ export type Political$Outbound = { flag: boolean; threshold?: number | undefined; id: "political"; }; /** @internal */ export declare const Political$outboundSchema: z.ZodMiniType; export declare function politicalToJSON(political: Political): string; /** @internal */ export type SelfPromotion$Outbound = { flag: boolean; threshold?: number | undefined; id: "self_promotion"; }; /** @internal */ export declare const SelfPromotion$outboundSchema: z.ZodMiniType; export declare function selfPromotionToJSON(selfPromotion: SelfPromotion): string; /** @internal */ export declare const Comparator$outboundSchema: z.ZodMiniEnum; /** @internal */ export type FaceDetection$Outbound = { flag: boolean; threshold?: number | undefined; id: "face_detection"; comparator?: string | undefined; count?: number | undefined; }; /** @internal */ export declare const FaceDetection$outboundSchema: z.ZodMiniType; export declare function faceDetectionToJSON(faceDetection: FaceDetection): string; /** @internal */ export type LowQualityContent$Outbound = { flag: boolean; threshold?: number | undefined; id: "low_quality"; minWords?: number | undefined; }; /** @internal */ export declare const LowQualityContent$outboundSchema: z.ZodMiniType; export declare function lowQualityContentToJSON(lowQualityContent: LowQualityContent): string; /** @internal */ export type Spam$Outbound = { flag: boolean; threshold?: number | undefined; id: "spam"; }; /** @internal */ export declare const Spam$outboundSchema: z.ZodMiniType; export declare function spamToJSON(spam: Spam): string; /** @internal */ export type SelfHarm$Outbound = { flag: boolean; threshold?: number | undefined; id: "self_harm"; }; /** @internal */ export declare const SelfHarm$outboundSchema: z.ZodMiniType; export declare function selfHarmToJSON(selfHarm: SelfHarm): string; /** @internal */ export type Violence$Outbound = { flag: boolean; threshold?: number | undefined; id: "violence"; }; /** @internal */ export declare const Violence$outboundSchema: z.ZodMiniType; export declare function violenceToJSON(violence: Violence): string; /** @internal */ export type Profanity$Outbound = { flag: boolean; threshold?: number | undefined; id: "profanity"; }; /** @internal */ export declare const Profanity$outboundSchema: z.ZodMiniType; export declare function profanityToJSON(profanity: Profanity): string; /** @internal */ export type SexualMinors$Outbound = { flag: boolean; threshold?: number | undefined; id: "sexual_minors"; }; /** @internal */ export declare const SexualMinors$outboundSchema: z.ZodMiniType; export declare function sexualMinorsToJSON(sexualMinors: SexualMinors): string; /** @internal */ export type Sexual$Outbound = { flag: boolean; threshold?: number | undefined; id: "sexual"; }; /** @internal */ export declare const Sexual$outboundSchema: z.ZodMiniType; export declare function sexualToJSON(sexual: Sexual): string; /** @internal */ export type Crypto$Outbound = { flag: boolean; threshold?: number | undefined; id: "crypto"; }; /** @internal */ export declare const Crypto$outboundSchema: z.ZodMiniType; export declare function cryptoToJSON(crypto: Crypto): string; /** @internal */ export type Adult$Outbound = { flag: boolean; threshold?: number | undefined; id: "adult"; }; /** @internal */ export declare const Adult$outboundSchema: z.ZodMiniType; export declare function adultToJSON(adult: Adult): string; /** @internal */ export type Cannabis$Outbound = { flag: boolean; threshold?: number | undefined; id: "cannabis"; }; /** @internal */ export declare const Cannabis$outboundSchema: z.ZodMiniType; export declare function cannabisToJSON(cannabis: Cannabis): string; /** @internal */ export type IllicitGambling$Outbound = { flag: boolean; threshold?: number | undefined; id: "illicit_gambling"; }; /** @internal */ export declare const IllicitGambling$outboundSchema: z.ZodMiniType; export declare function illicitGamblingToJSON(illicitGambling: IllicitGambling): string; /** @internal */ export type IllicitTobacco$Outbound = { flag: boolean; threshold?: number | undefined; id: "illicit_tobacco"; }; /** @internal */ export declare const IllicitTobacco$outboundSchema: z.ZodMiniType; export declare function illicitTobaccoToJSON(illicitTobacco: IllicitTobacco): string; /** @internal */ export type IllicitFirearms$Outbound = { flag: boolean; threshold?: number | undefined; id: "illicit_firearms"; }; /** @internal */ export declare const IllicitFirearms$outboundSchema: z.ZodMiniType; export declare function illicitFirearmsToJSON(illicitFirearms: IllicitFirearms): string; /** @internal */ export type IllicitAlcohol$Outbound = { flag: boolean; threshold?: number | undefined; id: "illicit_alcohol"; }; /** @internal */ export declare const IllicitAlcohol$outboundSchema: z.ZodMiniType; export declare function illicitAlcoholToJSON(illicitAlcohol: IllicitAlcohol): string; /** @internal */ export type IllicitDrugs$Outbound = { flag: boolean; threshold?: number | undefined; id: "illicit_drugs"; }; /** @internal */ export declare const IllicitDrugs$outboundSchema: z.ZodMiniType; export declare function illicitDrugsToJSON(illicitDrugs: IllicitDrugs): string; /** @internal */ export type Illicit$Outbound = { flag: boolean; threshold?: number | undefined; id: "illicit"; }; /** @internal */ export declare const Illicit$outboundSchema: z.ZodMiniType; export declare function illicitToJSON(illicit: Illicit): string; /** @internal */ export type Hate$Outbound = { flag: boolean; threshold?: number | undefined; id: "hate"; }; /** @internal */ export declare const Hate$outboundSchema: z.ZodMiniType; export declare function hateToJSON(hate: Hate): string; /** @internal */ export type PersonalInformation$Outbound = { flag: boolean; threshold?: number | undefined; id: "personal_information"; }; /** @internal */ export declare const PersonalInformation$outboundSchema: z.ZodMiniType; export declare function personalInformationToJSON(personalInformation: PersonalInformation): string; /** @internal */ export type Toxicity$Outbound = { flag: boolean; threshold?: number | undefined; id: "toxicity"; }; /** @internal */ export declare const Toxicity$outboundSchema: z.ZodMiniType; export declare function toxicityToJSON(toxicity: Toxicity): string; /** @internal */ export type PolicyRequest$Outbound = Toxicity$Outbound | PersonalInformation$Outbound | Hate$Outbound | Illicit$Outbound | IllicitDrugs$Outbound | IllicitAlcohol$Outbound | IllicitFirearms$Outbound | IllicitTobacco$Outbound | IllicitGambling$Outbound | Cannabis$Outbound | Adult$Outbound | Crypto$Outbound | Sexual$Outbound | SexualMinors$Outbound | Profanity$Outbound | Violence$Outbound | SelfHarm$Outbound | Spam$Outbound | LowQualityContent$Outbound | FaceDetection$Outbound | SelfPromotion$Outbound | Political$Outbound | Religion$Outbound | Threat$Outbound | SexualSolicitation$Outbound | ChannelCircumvention$Outbound | IllegalTrade$Outbound | Alcohol$Outbound | Drugs$Outbound | Gambling$Outbound | Tobacco$Outbound | Weapons$Outbound | Promotion$Outbound | Extremism$Outbound | CodeAbuse$Outbound | UnicodeSpoofing$Outbound | PIIMasking$Outbound | URLMasking$Outbound | URLRisk$Outbound | Guideline$Outbound; /** @internal */ export declare const PolicyRequest$outboundSchema: z.ZodMiniType; export declare function policyRequestToJSON(policyRequest: PolicyRequest): string; /** @internal */ export type SubmitContentRequestBody$Outbound = { content: TextRequest$Outbound | ImageRequest$Outbound | VideoRequest$Outbound | AudioRequest$Outbound | ObjectT$Outbound; timestamp?: number | undefined; channel?: string | undefined; contentId?: string | undefined; metaType?: string | undefined; authorId?: string | undefined; conversationId?: string | undefined; metadata?: { [k: string]: any; } | undefined; clientAction?: ClientAction$Outbound | undefined; doNotStore?: boolean | undefined; policies?: Array | undefined; }; /** @internal */ export declare const SubmitContentRequestBody$outboundSchema: z.ZodMiniType; export declare function submitContentRequestBodyToJSON(submitContentRequestBody: SubmitContentRequestBody): string; /** @internal */ export type SubmitContentRequest$Outbound = { projectId?: string | undefined; body: SubmitContentRequestBody$Outbound; }; /** @internal */ export declare const SubmitContentRequest$outboundSchema: z.ZodMiniType; export declare function submitContentRequestToJSON(submitContentRequest: SubmitContentRequest): string; /** @internal */ export declare const AudioResponse$inboundSchema: z.ZodMiniType; export declare function audioResponseFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const VideoResponse$inboundSchema: z.ZodMiniType; export declare function videoResponseFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const ImageResponse$inboundSchema: z.ZodMiniType; export declare function imageResponseFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const TextResponse$inboundSchema: z.ZodMiniType; export declare function textResponseFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const ContentLeafResponse$inboundSchema: z.ZodMiniType; export declare function contentLeafResponseFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const Modified$inboundSchema: z.ZodMiniType; export declare function modifiedFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const ContentResponse$inboundSchema: z.ZodMiniType; export declare function contentResponseFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const Block$inboundSchema: z.ZodMiniType; export declare function blockFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const AuthorStatus$inboundSchema: z.ZodMiniType; /** @internal */ export declare const TrustLevel$inboundSchema: z.ZodMiniType; export declare function trustLevelFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const Author$inboundSchema: z.ZodMiniType; export declare function authorFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const Evaluation$inboundSchema: z.ZodMiniType; export declare function evaluationFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const SubmitContentRecommendationAction$inboundSchema: z.ZodMiniType; /** @internal */ export declare const ReasonCodeEnum$inboundSchema: z.ZodMiniType; /** @internal */ export declare const ReasonCode$inboundSchema: z.ZodMiniType; export declare function reasonCodeFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const MatchedRule$inboundSchema: z.ZodMiniType; export declare function matchedRuleFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const Recommendation$inboundSchema: z.ZodMiniType; export declare function recommendationFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const Verdict$inboundSchema: z.ZodMiniType; /** @internal */ export declare const Topic$inboundSchema: z.ZodMiniType; export declare function topicFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const Casebook$inboundSchema: z.ZodMiniType; export declare function casebookFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const Method$inboundSchema: z.ZodMiniType; /** @internal */ export declare const BrandImpersonation$inboundSchema: z.ZodMiniType; export declare function brandImpersonationFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const SignalsResponse$inboundSchema: z.ZodMiniType; export declare function signalsResponseFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const Match$inboundSchema: z.ZodMiniType; export declare function matchFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const EntityMatcherOutput$inboundSchema: z.ZodMiniType; export declare function entityMatcherOutputFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const SubmitContentLabel$inboundSchema: z.ZodMiniType; export declare function submitContentLabelFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const ClassifierOutput$inboundSchema: z.ZodMiniType; export declare function classifierOutputFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const PolicyResponse$inboundSchema: z.ZodMiniType; export declare function policyResponseFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const CompassionInsight$inboundSchema: z.ZodMiniType; export declare function compassionInsightFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const PersonalStoryInsight$inboundSchema: z.ZodMiniType; export declare function personalStoryInsightFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const RespectInsight$inboundSchema: z.ZodMiniType; export declare function respectInsightFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const CuriosityInsight$inboundSchema: z.ZodMiniType; export declare function curiosityInsightFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const LanguageInsight$inboundSchema: z.ZodMiniType; export declare function languageInsightFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const Value$inboundSchema: z.ZodMiniType; /** @internal */ export declare const Scores$inboundSchema: z.ZodMiniType; export declare function scoresFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const SentimentInsight$inboundSchema: z.ZodMiniType; export declare function sentimentInsightFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const Insight$inboundSchema: z.ZodMiniType; export declare function insightFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const MetaStatus$inboundSchema: z.ZodMiniType; /** @internal */ export declare const Meta$inboundSchema: z.ZodMiniType; export declare function metaFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const ErrorT$inboundSchema: z.ZodMiniType; export declare function errorFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const SubmitContentResponse$inboundSchema: z.ZodMiniType; export declare function submitContentResponseFromJSON(jsonString: string): SafeParseResult; //# sourceMappingURL=submit-content.d.ts.map