import { l } from '@atproto/lex'; import * as LabelerDefs from './defs.defs.js'; import * as LabelDefs from '../../../com/atproto/label/defs.defs.js'; import * as ModerationDefs from '../../../com/atproto/moderation/defs.defs.js'; declare const $nsid = "app.bsky.labeler.service"; export { $nsid }; /** A declaration of the existence of labeler service. */ type Main = { $type: 'app.bsky.labeler.service'; policies: LabelerDefs.LabelerPolicies; labels?: l.$Typed | l.Unknown$TypedObject; createdAt: l.DatetimeString; /** * The set of report reason 'codes' which are in-scope for this service to review and action. These usually align to policy categories. If not defined (distinct from empty array), all reason types are allowed. */ reasonTypes?: ModerationDefs.ReasonType[]; /** * The set of subject types (account, record, etc) this service accepts reports on. */ subjectTypes?: ModerationDefs.SubjectType[]; /** * Set of record types (collection NSIDs) which can be reported to this service. If not defined (distinct from empty array), default is any record type. */ subjectCollections?: l.NsidString[]; }; export type { Main }; /** A declaration of the existence of labeler service. */ declare const main: l.RecordSchema<"literal:self", "app.bsky.labeler.service", l.Validator, Omit>>; export { main }; export declare const $type = "app.bsky.labeler.service"; export declare const $isTypeOf: (value: TValue) => value is l.TypedRecord<"app.bsky.labeler.service", TValue>; export declare const $build: { (input: Omit, "$type">): { $type: "app.bsky.labeler.service"; policies: LabelerDefs.LabelerPolicies; labels?: l.$Typed | l.Unknown$TypedObject; createdAt: l.DatetimeString; reasonTypes?: ModerationDefs.ReasonType[]; subjectTypes?: ModerationDefs.SubjectType[]; subjectCollections?: l.NsidString[]; }; (input: Omit, "$type">): { $type: "app.bsky.labeler.service"; policies: LabelerDefs.LabelerPolicies; labels?: l.$Typed | l.Unknown$TypedObject; createdAt: l.DatetimeString; reasonTypes?: ModerationDefs.ReasonType[]; subjectTypes?: ModerationDefs.SubjectType[]; subjectCollections?: l.NsidString[]; }; }; export declare const $assert: (input: unknown, options?: l.ValidateOptions) => asserts input is { $type: "app.bsky.labeler.service"; policies: LabelerDefs.LabelerPolicies; labels?: l.$Typed | l.Unknown$TypedObject; createdAt: l.DatetimeString; reasonTypes?: ModerationDefs.ReasonType[]; subjectTypes?: ModerationDefs.SubjectType[]; subjectCollections?: l.NsidString[]; }; export declare const $check: (input: unknown, options?: l.ValidateOptions) => void; export declare const $cast: (input: I, options?: l.ValidateOptions) => I & { $type: "app.bsky.labeler.service"; policies: LabelerDefs.LabelerPolicies; labels?: l.$Typed | l.Unknown$TypedObject; createdAt: l.DatetimeString; reasonTypes?: ModerationDefs.ReasonType[]; subjectTypes?: ModerationDefs.SubjectType[]; subjectCollections?: l.NsidString[]; }; export declare const $ifMatches: (input: I, options?: l.ValidateOptions) => (I & { $type: "app.bsky.labeler.service"; policies: LabelerDefs.LabelerPolicies; labels?: l.$Typed | l.Unknown$TypedObject; createdAt: l.DatetimeString; reasonTypes?: ModerationDefs.ReasonType[]; subjectTypes?: ModerationDefs.SubjectType[]; subjectCollections?: l.NsidString[]; }) | undefined; export declare const $matches: (input: I, options?: l.ValidateOptions) => input is I & { $type: "app.bsky.labeler.service"; policies: LabelerDefs.LabelerPolicies; labels?: l.$Typed | l.Unknown$TypedObject; createdAt: l.DatetimeString; reasonTypes?: ModerationDefs.ReasonType[]; subjectTypes?: ModerationDefs.SubjectType[]; subjectCollections?: l.NsidString[]; }; export declare const $parse: (input: unknown, options?: l.ParseOptions) => { $type: "app.bsky.labeler.service"; policies: LabelerDefs.LabelerPolicies; labels?: l.$Typed | l.Unknown$TypedObject; createdAt: l.DatetimeString; reasonTypes?: ModerationDefs.ReasonType[]; subjectTypes?: ModerationDefs.SubjectType[]; subjectCollections?: l.NsidString[]; }; export declare const $safeParse: (input: unknown, options?: l.ParseOptions) => l.ValidationResult<{ $type: "app.bsky.labeler.service"; policies: LabelerDefs.LabelerPolicies; labels?: l.$Typed | l.Unknown$TypedObject; createdAt: l.DatetimeString; reasonTypes?: ModerationDefs.ReasonType[]; subjectTypes?: ModerationDefs.SubjectType[]; subjectCollections?: l.NsidString[]; }>; export declare const $validate: (input: I, options?: l.ValidateOptions) => I & { $type: "app.bsky.labeler.service"; policies: LabelerDefs.LabelerPolicies; labels?: l.$Typed | l.Unknown$TypedObject; createdAt: l.DatetimeString; reasonTypes?: ModerationDefs.ReasonType[]; subjectTypes?: ModerationDefs.SubjectType[]; subjectCollections?: l.NsidString[]; }; export declare const $safeValidate: (input: I, options?: l.ValidateOptions) => l.ValidationResult | l.Unknown$TypedObject; createdAt: l.DatetimeString; reasonTypes?: ModerationDefs.ReasonType[]; subjectTypes?: ModerationDefs.SubjectType[]; subjectCollections?: l.NsidString[]; }>; //# sourceMappingURL=service.defs.d.ts.map