Skip to content

Page

Defined in: src/models/page.model.ts:9

Page model wrapping a validated Notion page object with helper methods.

new Page(data): Page

Defined in: src/models/page.model.ts:10

unknown

Page

BaseModel<NotionPage>.constructor

get createdTime(): Date

Defined in: src/models/page.model.ts:22

Date


get id(): string

Defined in: src/models/page.model.ts:18

Returns the unique identifier.

string

BaseModel.id


get inTrash(): boolean

Defined in: src/models/page.model.ts:30

boolean


get isArchived(): boolean

Defined in: src/models/page.model.ts:34

boolean


get isLocked(): boolean

Defined in: src/models/page.model.ts:38

boolean


get lastEditedTime(): Date

Defined in: src/models/page.model.ts:26

Date


get object(): string

Defined in: src/models/page.model.ts:14

Returns the object type, for example “page”, “block”, or “user”.

string

BaseModel.object


get properties(): Record<string, NotionPageProperties>

Defined in: src/models/page.model.ts:50

Record<string, NotionPageProperties>


get publicUrl(): string | null

Defined in: src/models/page.model.ts:46

string | null


get url(): string

Defined in: src/models/page.model.ts:42

string

getProperty(name): { checkbox: boolean; id: string; type: "checkbox"; } | { created_by: { avatar_url?: string | null; id: string; name?: string; object: "user"; person: { email: string; email_verified?: boolean; }; type: "person"; } | { avatar_url?: string | null; bot: { owner: { type: "workspace"; workspace: true; } | { type: "user"; }; workspace_id?: string; workspace_limits?: { max_file_upload_size_in_bytes: number; }; workspace_name?: string | null; }; id: string; name?: string; object: "user"; type: "bot"; } | { id: string; object: "user"; }; id: string; type: "created_by"; } | { created_time: string; id: string; type: "created_time"; } | { date: { end: string | null; start: string; time_zone: string | null; } | null; id: string; type: "date"; } | { email: string | null; id: string; type: "email"; } | { files: object[]; id: string; type: "files"; } | { formula: { boolean: boolean; type: "boolean"; } | { date: { end: string | null; start: string; time_zone: string | null; }; type: "date"; } | { number: number | null; type: "number"; } | { string: string | null; type: "string"; }; id: string; type: "formula"; } | { id: string; last_edited_by: { avatar_url?: string | null; id: string; name?: string; object: "user"; person: { email: string; email_verified?: boolean; }; type: "person"; } | { avatar_url?: string | null; bot: { owner: { type: "workspace"; workspace: true; } | { type: "user"; }; workspace_id?: string; workspace_limits?: { max_file_upload_size_in_bytes: number; }; workspace_name?: string | null; }; id: string; name?: string; object: "user"; type: "bot"; } | { id: string; object: "user"; }; type: "last_edited_by"; } | { id: string; last_edited_time: string; type: "last_edited_time"; } | { id: string; multi_select: object[]; type: "multi_select"; } | { id: string; number: number | null; type: "number"; } | { id: string; people: ({ avatar_url?: string | null; id: string; name?: string; object: "user"; person: { email: string; email_verified?: boolean; }; type: "person"; } | { avatar_url?: string | null; bot: { owner: { type: "workspace"; workspace: true; } | { type: "user"; }; workspace_id?: string; workspace_limits?: { max_file_upload_size_in_bytes: number; }; workspace_name?: string | null; }; id: string; name?: string; object: "user"; type: "bot"; } | { id: string; object: "user"; })[]; type: "people"; } | { id: string; phone_number: string | null; type: "phone_number"; } | { has_more: boolean; id: string; relation: object[]; type: "relation"; } | { id: string; rich_text: ({ annotations: { bold: boolean; code: boolean; color: "default" | "blue" | "blue_background" | "brown" | "brown_background" | "gray" | "gray_background" | "green" | "green_background" | "orange" | "orange_background" | "pink" | "pink_background" | "purple" | "purple_background" | "red" | "red_background" | "yellow" | "yellow_background"; italic: boolean; strikethrough: boolean; underline: boolean; }; href: string | null; plain_text: string; text: { content: string; link: { url: string; } | null; }; type: "text"; } | { annotations: { bold: boolean; code: boolean; color: "default" | "blue" | "blue_background" | "brown" | "brown_background" | "gray" | "gray_background" | "green" | "green_background" | "orange" | "orange_background" | "pink" | "pink_background" | "purple" | "purple_background" | "red" | "red_background" | "yellow" | "yellow_background"; italic: boolean; strikethrough: boolean; underline: boolean; }; href: string | null; mention: { database: { id: string; }; type: "database"; } | { date: { end: string | null; start: string; time_zone?: string | null; }; type: "date"; } | { link_preview: { url: string; }; type: "link_preview"; } | { page: { id: string; }; type: "page"; } | { template_mention: { template_mention_date: "today" | "now"; type: "template_mention_date"; } | { template_mention_user: "me"; type: "template_mention_user"; }; type: "template_mention"; } | { type: "user"; user: { avatar_url?: string | null; id: string; name?: string; object: "user"; person: { email: string; email_verified?: … | … | …; }; type: "person"; } | { avatar_url?: string | null; bot: { owner: … | …; workspace_id?: … | …; workspace_limits?: … | …; workspace_name?: … | … | …; }; id: string; name?: string; object: "user"; type: "bot"; } | { id: string; object: "user"; }; }; plain_text: string; type: "mention"; } | { annotations: { bold: boolean; code: boolean; color: "default" | "blue" | "blue_background" | "brown" | "brown_background" | "gray" | "gray_background" | "green" | "green_background" | "orange" | "orange_background" | "pink" | "pink_background" | "purple" | "purple_background" | "red" | "red_background" | "yellow" | "yellow_background"; italic: boolean; strikethrough: boolean; underline: boolean; }; equation: { expression: string; }; href: string | null; plain_text: string; type: "equation"; })[]; type: "rich_text"; } | { id: string; rollup: { array?: unknown[]; date?: { end: string | null; start: string; time_zone: string | null; } | null; function: "range" | "checked" | "average" | "count_per_group" | "count" | "count_values" | "date_range" | "earliest_date" | "empty" | "latest_date" | "max" | "median" | "min" | "not_empty" | "percent_checked" | "percent_empty" | "percent_not_empty" | "percent_per_group" | "percent_unchecked" | "unchecked" | "unique" | "show_original" | "show_unique" | "sum"; number?: number | null; type: "number" | "date" | "array" | "unsupported" | "incomplete"; }; type: "rollup"; } | { id: string; select: { color: "default" | "blue" | "blue_background" | "brown" | "brown_background" | "gray" | "gray_background" | "green" | "green_background" | "orange" | "orange_background" | "pink" | "pink_background" | "purple" | "purple_background" | "red" | "red_background" | "yellow" | "yellow_background"; id: string; name: string; } | null; type: "select"; } | { id: string; status: { color: "default" | "blue" | "blue_background" | "brown" | "brown_background" | "gray" | "gray_background" | "green" | "green_background" | "orange" | "orange_background" | "pink" | "pink_background" | "purple" | "purple_background" | "red" | "red_background" | "yellow" | "yellow_background"; id: string; name: string; } | null; type: "status"; } | { id: string; title: ({ annotations: { bold: boolean; code: boolean; color: "default" | "blue" | "blue_background" | "brown" | "brown_background" | "gray" | "gray_background" | "green" | "green_background" | "orange" | "orange_background" | "pink" | "pink_background" | "purple" | "purple_background" | "red" | "red_background" | "yellow" | "yellow_background"; italic: boolean; strikethrough: boolean; underline: boolean; }; href: string | null; plain_text: string; text: { content: string; link: { url: string; } | null; }; type: "text"; } | { annotations: { bold: boolean; code: boolean; color: "default" | "blue" | "blue_background" | "brown" | "brown_background" | "gray" | "gray_background" | "green" | "green_background" | "orange" | "orange_background" | "pink" | "pink_background" | "purple" | "purple_background" | "red" | "red_background" | "yellow" | "yellow_background"; italic: boolean; strikethrough: boolean; underline: boolean; }; href: string | null; mention: { database: { id: string; }; type: "database"; } | { date: { end: string | null; start: string; time_zone?: string | null; }; type: "date"; } | { link_preview: { url: string; }; type: "link_preview"; } | { page: { id: string; }; type: "page"; } | { template_mention: { template_mention_date: "today" | "now"; type: "template_mention_date"; } | { template_mention_user: "me"; type: "template_mention_user"; }; type: "template_mention"; } | { type: "user"; user: { avatar_url?: string | null; id: string; name?: string; object: "user"; person: { email: string; email_verified?: … | … | …; }; type: "person"; } | { avatar_url?: string | null; bot: { owner: … | …; workspace_id?: … | …; workspace_limits?: … | …; workspace_name?: … | … | …; }; id: string; name?: string; object: "user"; type: "bot"; } | { id: string; object: "user"; }; }; plain_text: string; type: "mention"; } | { annotations: { bold: boolean; code: boolean; color: "default" | "blue" | "blue_background" | "brown" | "brown_background" | "gray" | "gray_background" | "green" | "green_background" | "orange" | "orange_background" | "pink" | "pink_background" | "purple" | "purple_background" | "red" | "red_background" | "yellow" | "yellow_background"; italic: boolean; strikethrough: boolean; underline: boolean; }; equation: { expression: string; }; href: string | null; plain_text: string; type: "equation"; })[]; type: "title"; } | { id: string; type: "url"; url: string | null; } | { id: string; type: "unique_id"; unique_id: { number: number; prefix: string | null; }; } | { id: string; type: "verification"; verification: { date: { end: string | null; start: string; time_zone: string | null; } | null; state: "verified" | "unverified"; verified_by: { avatar_url?: string | null; id: string; name?: string; object: "user"; person: { email: string; email_verified?: boolean; }; type: "person"; } | { avatar_url?: string | null; bot: { owner: { type: "workspace"; workspace: true; } | { type: "user"; }; workspace_id?: string; workspace_limits?: { max_file_upload_size_in_bytes: number; }; workspace_name?: string | null; }; id: string; name?: string; object: "user"; type: "bot"; } | { id: string; object: "user"; } | null; } | null; } | undefined

Defined in: src/models/page.model.ts:57

Get a specific property by name.

string

{ checkbox: boolean; id: string; type: "checkbox"; } | { created_by: { avatar_url?: string | null; id: string; name?: string; object: "user"; person: { email: string; email_verified?: boolean; }; type: "person"; } | { avatar_url?: string | null; bot: { owner: { type: "workspace"; workspace: true; } | { type: "user"; }; workspace_id?: string; workspace_limits?: { max_file_upload_size_in_bytes: number; }; workspace_name?: string | null; }; id: string; name?: string; object: "user"; type: "bot"; } | { id: string; object: "user"; }; id: string; type: "created_by"; } | { created_time: string; id: string; type: "created_time"; } | { date: { end: string | null; start: string; time_zone: string | null; } | null; id: string; type: "date"; } | { email: string | null; id: string; type: "email"; } | { files: object[]; id: string; type: "files"; } | { formula: { boolean: boolean; type: "boolean"; } | { date: { end: string | null; start: string; time_zone: string | null; }; type: "date"; } | { number: number | null; type: "number"; } | { string: string | null; type: "string"; }; id: string; type: "formula"; } | { id: string; last_edited_by: { avatar_url?: string | null; id: string; name?: string; object: "user"; person: { email: string; email_verified?: boolean; }; type: "person"; } | { avatar_url?: string | null; bot: { owner: { type: "workspace"; workspace: true; } | { type: "user"; }; workspace_id?: string; workspace_limits?: { max_file_upload_size_in_bytes: number; }; workspace_name?: string | null; }; id: string; name?: string; object: "user"; type: "bot"; } | { id: string; object: "user"; }; type: "last_edited_by"; } | { id: string; last_edited_time: string; type: "last_edited_time"; } | { id: string; multi_select: object[]; type: "multi_select"; } | { id: string; number: number | null; type: "number"; } | { id: string; people: ({ avatar_url?: string | null; id: string; name?: string; object: "user"; person: { email: string; email_verified?: boolean; }; type: "person"; } | { avatar_url?: string | null; bot: { owner: { type: "workspace"; workspace: true; } | { type: "user"; }; workspace_id?: string; workspace_limits?: { max_file_upload_size_in_bytes: number; }; workspace_name?: string | null; }; id: string; name?: string; object: "user"; type: "bot"; } | { id: string; object: "user"; })[]; type: "people"; } | { id: string; phone_number: string | null; type: "phone_number"; } | { has_more: boolean; id: string; relation: object[]; type: "relation"; } | { id: string; rich_text: ({ annotations: { bold: boolean; code: boolean; color: "default" | "blue" | "blue_background" | "brown" | "brown_background" | "gray" | "gray_background" | "green" | "green_background" | "orange" | "orange_background" | "pink" | "pink_background" | "purple" | "purple_background" | "red" | "red_background" | "yellow" | "yellow_background"; italic: boolean; strikethrough: boolean; underline: boolean; }; href: string | null; plain_text: string; text: { content: string; link: { url: string; } | null; }; type: "text"; } | { annotations: { bold: boolean; code: boolean; color: "default" | "blue" | "blue_background" | "brown" | "brown_background" | "gray" | "gray_background" | "green" | "green_background" | "orange" | "orange_background" | "pink" | "pink_background" | "purple" | "purple_background" | "red" | "red_background" | "yellow" | "yellow_background"; italic: boolean; strikethrough: boolean; underline: boolean; }; href: string | null; mention: { database: { id: string; }; type: "database"; } | { date: { end: string | null; start: string; time_zone?: string | null; }; type: "date"; } | { link_preview: { url: string; }; type: "link_preview"; } | { page: { id: string; }; type: "page"; } | { template_mention: { template_mention_date: "today" | "now"; type: "template_mention_date"; } | { template_mention_user: "me"; type: "template_mention_user"; }; type: "template_mention"; } | { type: "user"; user: { avatar_url?: string | null; id: string; name?: string; object: "user"; person: { email: string; email_verified?: … | … | …; }; type: "person"; } | { avatar_url?: string | null; bot: { owner: … | …; workspace_id?: … | …; workspace_limits?: … | …; workspace_name?: … | … | …; }; id: string; name?: string; object: "user"; type: "bot"; } | { id: string; object: "user"; }; }; plain_text: string; type: "mention"; } | { annotations: { bold: boolean; code: boolean; color: "default" | "blue" | "blue_background" | "brown" | "brown_background" | "gray" | "gray_background" | "green" | "green_background" | "orange" | "orange_background" | "pink" | "pink_background" | "purple" | "purple_background" | "red" | "red_background" | "yellow" | "yellow_background"; italic: boolean; strikethrough: boolean; underline: boolean; }; equation: { expression: string; }; href: string | null; plain_text: string; type: "equation"; })[]; type: "rich_text"; } | { id: string; rollup: { array?: unknown[]; date?: { end: string | null; start: string; time_zone: string | null; } | null; function: "range" | "checked" | "average" | "count_per_group" | "count" | "count_values" | "date_range" | "earliest_date" | "empty" | "latest_date" | "max" | "median" | "min" | "not_empty" | "percent_checked" | "percent_empty" | "percent_not_empty" | "percent_per_group" | "percent_unchecked" | "unchecked" | "unique" | "show_original" | "show_unique" | "sum"; number?: number | null; type: "number" | "date" | "array" | "unsupported" | "incomplete"; }; type: "rollup"; } | { id: string; select: { color: "default" | "blue" | "blue_background" | "brown" | "brown_background" | "gray" | "gray_background" | "green" | "green_background" | "orange" | "orange_background" | "pink" | "pink_background" | "purple" | "purple_background" | "red" | "red_background" | "yellow" | "yellow_background"; id: string; name: string; } | null; type: "select"; } | { id: string; status: { color: "default" | "blue" | "blue_background" | "brown" | "brown_background" | "gray" | "gray_background" | "green" | "green_background" | "orange" | "orange_background" | "pink" | "pink_background" | "purple" | "purple_background" | "red" | "red_background" | "yellow" | "yellow_background"; id: string; name: string; } | null; type: "status"; } | { id: string; title: ({ annotations: { bold: boolean; code: boolean; color: "default" | "blue" | "blue_background" | "brown" | "brown_background" | "gray" | "gray_background" | "green" | "green_background" | "orange" | "orange_background" | "pink" | "pink_background" | "purple" | "purple_background" | "red" | "red_background" | "yellow" | "yellow_background"; italic: boolean; strikethrough: boolean; underline: boolean; }; href: string | null; plain_text: string; text: { content: string; link: { url: string; } | null; }; type: "text"; } | { annotations: { bold: boolean; code: boolean; color: "default" | "blue" | "blue_background" | "brown" | "brown_background" | "gray" | "gray_background" | "green" | "green_background" | "orange" | "orange_background" | "pink" | "pink_background" | "purple" | "purple_background" | "red" | "red_background" | "yellow" | "yellow_background"; italic: boolean; strikethrough: boolean; underline: boolean; }; href: string | null; mention: { database: { id: string; }; type: "database"; } | { date: { end: string | null; start: string; time_zone?: string | null; }; type: "date"; } | { link_preview: { url: string; }; type: "link_preview"; } | { page: { id: string; }; type: "page"; } | { template_mention: { template_mention_date: "today" | "now"; type: "template_mention_date"; } | { template_mention_user: "me"; type: "template_mention_user"; }; type: "template_mention"; } | { type: "user"; user: { avatar_url?: string | null; id: string; name?: string; object: "user"; person: { email: string; email_verified?: … | … | …; }; type: "person"; } | { avatar_url?: string | null; bot: { owner: … | …; workspace_id?: … | …; workspace_limits?: … | …; workspace_name?: … | … | …; }; id: string; name?: string; object: "user"; type: "bot"; } | { id: string; object: "user"; }; }; plain_text: string; type: "mention"; } | { annotations: { bold: boolean; code: boolean; color: "default" | "blue" | "blue_background" | "brown" | "brown_background" | "gray" | "gray_background" | "green" | "green_background" | "orange" | "orange_background" | "pink" | "pink_background" | "purple" | "purple_background" | "red" | "red_background" | "yellow" | "yellow_background"; italic: boolean; strikethrough: boolean; underline: boolean; }; equation: { expression: string; }; href: string | null; plain_text: string; type: "equation"; })[]; type: "title"; } | { id: string; type: "url"; url: string | null; } | { id: string; type: "unique_id"; unique_id: { number: number; prefix: string | null; }; } | { id: string; type: "verification"; verification: { date: { end: string | null; start: string; time_zone: string | null; } | null; state: "verified" | "unverified"; verified_by: { avatar_url?: string | null; id: string; name?: string; object: "user"; person: { email: string; email_verified?: boolean; }; type: "person"; } | { avatar_url?: string | null; bot: { owner: { type: "workspace"; workspace: true; } | { type: "user"; }; workspace_id?: string; workspace_limits?: { max_file_upload_size_in_bytes: number; }; workspace_name?: string | null; }; id: string; name?: string; object: "user"; type: "bot"; } | { id: string; object: "user"; } | null; } | null; } | undefined


getTitle(): string | null

Defined in: src/models/page.model.ts:64

Get the title property if it exists.

string | null


isInDatabase(): boolean

Defined in: src/models/page.model.ts:76

Check if the page is a child of a database.

boolean


isSubpage(): boolean

Defined in: src/models/page.model.ts:83

Check if the page is a child of another page.

boolean


toJSON(): object

Defined in: src/models/base.model.ts:20

Returns the raw validated data as a plain object.

object

cover: { file: { expiry_time: string; url: string; }; type: "file"; } | { file_upload: { id: string; }; type: "file_upload"; } | { external: { url: string; }; type: "external"; } | null

created_by: { avatar_url?: string | null; id: string; name?: string; object: "user"; person: { email: string; email_verified?: boolean; }; type: "person"; } | { avatar_url?: string | null; bot: { owner: { type: "workspace"; workspace: true; } | { type: "user"; }; workspace_id?: string; workspace_limits?: { max_file_upload_size_in_bytes: number; }; workspace_name?: string | null; }; id: string; name?: string; object: "user"; type: "bot"; } | { id: string; object: "user"; } = userSchema

created_time: string = notionDateStringSchema

icon: { file: { expiry_time: string; url: string; }; type: "file"; } | { file_upload: { id: string; }; type: "file_upload"; } | { external: { url: string; }; type: "external"; } | { emoji: string; type: "emoji"; } | { icon: { color?: "blue" | "brown" | "gray" | "green" | "orange" | "pink" | "purple" | "red" | "yellow" | "lightgray"; name: string; }; type: "icon"; } | { custom_emoji: { id: string; name?: string; url?: string; }; type: "custom_emoji"; } | null

id: string

in_trash: boolean

optional is_archived?: boolean

optional is_locked?: boolean

last_edited_by: { avatar_url?: string | null; id: string; name?: string; object: "user"; person: { email: string; email_verified?: boolean; }; type: "person"; } | { avatar_url?: string | null; bot: { owner: { type: "workspace"; workspace: true; } | { type: "user"; }; workspace_id?: string; workspace_limits?: { max_file_upload_size_in_bytes: number; }; workspace_name?: string | null; }; id: string; name?: string; object: "user"; type: "bot"; } | { id: string; object: "user"; } = userSchema

last_edited_time: string = notionDateStringSchema

object: "page"

parent: { database_id: string; type: "database_id"; } | { data_source_id: string; database_id: string; type: "data_source_id"; } | { page_id: string; type: "page_id"; } | { type: "workspace"; workspace: true; } | { block_id: string; type: "block_id"; } | { agent_id: string; type: "agent_id"; } = parentSchema

properties: Record<string, { checkbox: boolean; id: string; type: "checkbox"; } | { created_by: { avatar_url?: string | null; id: string; name?: string; object: "user"; person: { email: string; email_verified?: boolean; }; type: "person"; } | { avatar_url?: string | null; bot: { owner: { type: "workspace"; workspace: true; } | { type: "user"; }; workspace_id?: string; workspace_limits?: { max_file_upload_size_in_bytes: number; }; workspace_name?: string | null; }; id: string; name?: string; object: "user"; type: "bot"; } | { id: string; object: "user"; }; id: string; type: "created_by"; } | { created_time: string; id: string; type: "created_time"; } | { date: { end: string | null; start: string; time_zone: string | null; } | null; id: string; type: "date"; } | { email: string | null; id: string; type: "email"; } | { files: object[]; id: string; type: "files"; } | { formula: { boolean: boolean; type: "boolean"; } | { date: { end: string | null; start: string; time_zone: string | null; }; type: "date"; } | { number: number | null; type: "number"; } | { string: string | null; type: "string"; }; id: string; type: "formula"; } | { id: string; last_edited_by: { avatar_url?: string | null; id: string; name?: string; object: "user"; person: { email: string; email_verified?: boolean; }; type: "person"; } | { avatar_url?: string | null; bot: { owner: { type: "workspace"; workspace: true; } | { type: "user"; }; workspace_id?: string; workspace_limits?: { max_file_upload_size_in_bytes: number; }; workspace_name?: string | null; }; id: string; name?: string; object: "user"; type: "bot"; } | { id: string; object: "user"; }; type: "last_edited_by"; } | { id: string; last_edited_time: string; type: "last_edited_time"; } | { id: string; multi_select: object[]; type: "multi_select"; } | { id: string; number: number | null; type: "number"; } | { id: string; people: ({ avatar_url?: string | null; id: string; name?: string; object: "user"; person: { email: string; email_verified?: boolean; }; type: "person"; } | { avatar_url?: string | null; bot: { owner: { type: "workspace"; workspace: true; } | { type: "user"; }; workspace_id?: string; workspace_limits?: { max_file_upload_size_in_bytes: number; }; workspace_name?: string | null; }; id: string; name?: string; object: "user"; type: "bot"; } | { id: string; object: "user"; })[]; type: "people"; } | { id: string; phone_number: string | null; type: "phone_number"; } | { has_more: boolean; id: string; relation: object[]; type: "relation"; } | { id: string; rich_text: ({ annotations: { bold: boolean; code: boolean; color: "default" | "blue" | "blue_background" | "brown" | "brown_background" | "gray" | "gray_background" | "green" | "green_background" | "orange" | "orange_background" | "pink" | "pink_background" | "purple" | "purple_background" | "red" | "red_background" | "yellow" | "yellow_background"; italic: boolean; strikethrough: boolean; underline: boolean; }; href: string | null; plain_text: string; text: { content: string; link: { url: string; } | null; }; type: "text"; } | { annotations: { bold: boolean; code: boolean; color: "default" | "blue" | "blue_background" | "brown" | "brown_background" | "gray" | "gray_background" | "green" | "green_background" | "orange" | "orange_background" | "pink" | "pink_background" | "purple" | "purple_background" | "red" | "red_background" | "yellow" | "yellow_background"; italic: boolean; strikethrough: boolean; underline: boolean; }; href: string | null; mention: { database: { id: string; }; type: "database"; } | { date: { end: … | …; start: string; time_zone?: … | … | …; }; type: "date"; } | { link_preview: { url: string; }; type: "link_preview"; } | { page: { id: string; }; type: "page"; } | { template_mention: { template_mention_date: …; type: …; } | { template_mention_user: …; type: …; }; type: "template_mention"; } | { type: "user"; user: { avatar_url?: …; id: …; name?: …; object: …; person: …; type: …; } | { avatar_url?: …; bot: …; id: …; name?: …; object: …; type: …; } | { id: …; object: …; }; }; plain_text: string; type: "mention"; } | { annotations: { bold: boolean; code: boolean; color: "default" | "blue" | "blue_background" | "brown" | "brown_background" | "gray" | "gray_background" | "green" | "green_background" | "orange" | "orange_background" | "pink" | "pink_background" | "purple" | "purple_background" | "red" | "red_background" | "yellow" | "yellow_background"; italic: boolean; strikethrough: boolean; underline: boolean; }; equation: { expression: string; }; href: string | null; plain_text: string; type: "equation"; })[]; type: "rich_text"; } | { id: string; rollup: { array?: unknown[]; date?: { end: string | null; start: string; time_zone: string | null; } | null; function: "range" | "checked" | "average" | "count_per_group" | "count" | "count_values" | "date_range" | "earliest_date" | "empty" | "latest_date" | "max" | "median" | "min" | "not_empty" | "percent_checked" | "percent_empty" | "percent_not_empty" | "percent_per_group" | "percent_unchecked" | "unchecked" | "unique" | "show_original" | "show_unique" | "sum"; number?: number | null; type: "number" | "date" | "array" | "unsupported" | "incomplete"; }; type: "rollup"; } | { id: string; select: { color: "default" | "blue" | "blue_background" | "brown" | "brown_background" | "gray" | "gray_background" | "green" | "green_background" | "orange" | "orange_background" | "pink" | "pink_background" | "purple" | "purple_background" | "red" | "red_background" | "yellow" | "yellow_background"; id: string; name: string; } | null; type: "select"; } | { id: string; status: { color: "default" | "blue" | "blue_background" | "brown" | "brown_background" | "gray" | "gray_background" | "green" | "green_background" | "orange" | "orange_background" | "pink" | "pink_background" | "purple" | "purple_background" | "red" | "red_background" | "yellow" | "yellow_background"; id: string; name: string; } | null; type: "status"; } | { id: string; title: ({ annotations: { bold: boolean; code: boolean; color: "default" | "blue" | "blue_background" | "brown" | "brown_background" | "gray" | "gray_background" | "green" | "green_background" | "orange" | "orange_background" | "pink" | "pink_background" | "purple" | "purple_background" | "red" | "red_background" | "yellow" | "yellow_background"; italic: boolean; strikethrough: boolean; underline: boolean; }; href: string | null; plain_text: string; text: { content: string; link: { url: string; } | null; }; type: "text"; } | { annotations: { bold: boolean; code: boolean; color: "default" | "blue" | "blue_background" | "brown" | "brown_background" | "gray" | "gray_background" | "green" | "green_background" | "orange" | "orange_background" | "pink" | "pink_background" | "purple" | "purple_background" | "red" | "red_background" | "yellow" | "yellow_background"; italic: boolean; strikethrough: boolean; underline: boolean; }; href: string | null; mention: { database: { id: string; }; type: "database"; } | { date: { end: … | …; start: string; time_zone?: … | … | …; }; type: "date"; } | { link_preview: { url: string; }; type: "link_preview"; } | { page: { id: string; }; type: "page"; } | { template_mention: { template_mention_date: …; type: …; } | { template_mention_user: …; type: …; }; type: "template_mention"; } | { type: "user"; user: { avatar_url?: …; id: …; name?: …; object: …; person: …; type: …; } | { avatar_url?: …; bot: …; id: …; name?: …; object: …; type: …; } | { id: …; object: …; }; }; plain_text: string; type: "mention"; } | { annotations: { bold: boolean; code: boolean; color: "default" | "blue" | "blue_background" | "brown" | "brown_background" | "gray" | "gray_background" | "green" | "green_background" | "orange" | "orange_background" | "pink" | "pink_background" | "purple" | "purple_background" | "red" | "red_background" | "yellow" | "yellow_background"; italic: boolean; strikethrough: boolean; underline: boolean; }; equation: { expression: string; }; href: string | null; plain_text: string; type: "equation"; })[]; type: "title"; } | { id: string; type: "url"; url: string | null; } | { id: string; type: "unique_id"; unique_id: { number: number; prefix: string | null; }; } | { id: string; type: "verification"; verification: { date: { end: string | null; start: string; time_zone: string | null; } | null; state: "verified" | "unverified"; verified_by: { avatar_url?: string | null; id: string; name?: string; object: "user"; person: { email: string; email_verified?: boolean; }; type: "person"; } | { avatar_url?: string | null; bot: { owner: { type: …; workspace: …; } | { type: …; }; workspace_id?: string; workspace_limits?: { max_file_upload_size_in_bytes: …; }; workspace_name?: string | null; }; id: string; name?: string; object: "user"; type: "bot"; } | { id: string; object: "user"; } | null; } | null; }>

public_url: string | null

url: string

BaseModel.toJSON