import * as v from "@exodus/schemasafe"; import { IIdString } from "./../id_string"; import { INull } from "./../null"; import { IDateObject } from "./../date_object"; import { IDate } from "./../date"; export interface IAccount { id: IIdString; email: string | INull; /** * Account's display name */ display_name: string; updated_at: IDateObject; created_at: IDate; } export declare const AccountSchema: Readonly<{ readonly $schema: "https://json-schema.org/draft/2020-12/schema"; readonly $id: "account/generic"; readonly title: "Account"; readonly type: "object"; readonly additionalProperties: false; readonly required: readonly ["id", "email", "display_name", "updated_at", "created_at"]; readonly properties: { readonly id: Readonly<{ readonly $schema: "https://json-schema.org/draft/2020-12/schema"; readonly $id: "id_string"; readonly title: "IdString"; readonly type: "string"; readonly format: "objectid"; readonly examples: readonly ["507f1f77bcf86cd799439011"]; }>; readonly email: { readonly oneOf: readonly [{ readonly type: "string"; readonly format: "email"; readonly description: "Account's email address"; }, Readonly<{ readonly $schema: "https://json-schema.org/draft/2020-12/schema"; readonly $id: "null"; readonly title: "Null"; readonly type: "null"; readonly nullable: true; readonly examples: readonly ["null"]; readonly readOnly: true; }>]; }; readonly display_name: { readonly type: "string"; readonly format: "any"; readonly minLength: 3; readonly maxLength: 32; readonly description: "Account's display name"; }; readonly updated_at: Readonly<{ readonly $schema: "https://json-schema.org/draft/2020-12/schema"; readonly $id: "date_object"; readonly title: "DateObject"; readonly tsType: "Date"; readonly type: "object"; readonly additionalProperties: true; readonly readOnly: true; }>; readonly created_at: Readonly<{ readonly $schema: "https://json-schema.org/draft/2020-12/schema"; readonly $id: "date"; readonly title: "Date"; readonly oneOf: readonly [Readonly<{ readonly $schema: "https://json-schema.org/draft/2020-12/schema"; readonly $id: "date_string"; readonly title: "DateString"; readonly type: "string"; readonly format: "date-time"; readonly examples: readonly ["2021-11-12T01:59:23.718Z"]; }>, Readonly<{ readonly $schema: "https://json-schema.org/draft/2020-12/schema"; readonly $id: "date_number"; readonly title: "DateNumber"; readonly type: "number"; readonly examples: readonly ["1636234281248"]; }>, Readonly<{ readonly $schema: "https://json-schema.org/draft/2020-12/schema"; readonly $id: "date_object"; readonly title: "DateObject"; readonly tsType: "Date"; readonly type: "object"; readonly additionalProperties: true; readonly readOnly: true; }>]; }>; }; }>; export declare function validateAccount(value: unknown, options?: v.ValidatorOptions): v.ParseResult; export declare function assertAccount(value: unknown): asserts value is IAccount;