import * as z from "zod/v3"; import { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; import { Document, Document$Outbound } from "./document.js"; import { ObjectPermissions, ObjectPermissions$Outbound } from "./objectpermissions.js"; import { Person, Person$Outbound } from "./person.js"; import { UserRoleSpecification, UserRoleSpecification$Outbound } from "./userrolespecification.js"; export type Shortcut = { /** * The opaque id of the user generated content. */ id?: number | undefined; /** * Link text following go/ prefix as entered by the user. */ inputAlias: string; /** * Destination URL for the shortcut. */ destinationUrl?: string | undefined; /** * Glean Document ID for the URL, if known. */ destinationDocumentId?: string | undefined; /** * A short, plain text blurb to help people understand the intent of the shortcut. */ description?: string | undefined; /** * Whether this shortcut is unlisted or not. Unlisted shortcuts are visible to author + admins only. */ unlisted?: boolean | undefined; /** * For variable shortcuts, contains the URL template; note, `destinationUrl` contains default URL. */ urlTemplate?: string | undefined; /** * A list of user roles added for the Shortcut. */ addedRoles?: Array | undefined; /** * A list of user roles removed for the Shortcut. */ removedRoles?: Array | undefined; permissions?: ObjectPermissions | undefined; createdBy?: Person | undefined; /** * The time the shortcut was created in ISO format (ISO 8601). */ createTime?: Date | undefined; updatedBy?: Person | undefined; /** * The time the shortcut was updated in ISO format (ISO 8601). */ updateTime?: Date | undefined; destinationDocument?: Document | undefined; /** * The URL from which the user is then redirected to the destination URL. Full replacement for https://go/. */ intermediateUrl?: string | undefined; /** * The part of the shortcut preceding the input alias when used for showing shortcuts to users. Should end with "/". e.g. "go/" for native shortcuts. */ viewPrefix?: string | undefined; /** * Indicates whether a shortcut is native or external. */ isExternal?: boolean | undefined; /** * The URL using which the user can access the edit page of the shortcut. */ editUrl?: string | undefined; /** * canonical link text following go/ prefix where hyphen/underscore is removed. */ alias?: string | undefined; /** * Title for the Go Link */ title?: string | undefined; /** * A list of user roles for the Go Link. */ roles?: Array | undefined; }; /** @internal */ export declare const Shortcut$inboundSchema: z.ZodType; /** @internal */ export type Shortcut$Outbound = { id?: number | undefined; inputAlias: string; destinationUrl?: string | undefined; destinationDocumentId?: string | undefined; description?: string | undefined; unlisted?: boolean | undefined; urlTemplate?: string | undefined; addedRoles?: Array | undefined; removedRoles?: Array | undefined; permissions?: ObjectPermissions$Outbound | undefined; createdBy?: Person$Outbound | undefined; createTime?: string | undefined; updatedBy?: Person$Outbound | undefined; updateTime?: string | undefined; destinationDocument?: Document$Outbound | undefined; intermediateUrl?: string | undefined; viewPrefix?: string | undefined; isExternal?: boolean | undefined; editUrl?: string | undefined; alias?: string | undefined; title?: string | undefined; roles?: Array | undefined; }; /** @internal */ export declare const Shortcut$outboundSchema: z.ZodType; export declare function shortcutToJSON(shortcut: Shortcut): string; export declare function shortcutFromJSON(jsonString: string): SafeParseResult; //# sourceMappingURL=shortcut.d.ts.map