/** * Token definition for Tinybird * Define reusable static tokens as TypeScript with full type safety */ declare const TOKEN_BRAND: unique symbol; /** * Token scope for datasources */ export type DatasourceTokenScope = "READ" | "APPEND"; /** * Token scope for pipes (READ only) */ export type PipeTokenScope = "READ"; /** * A token definition */ export interface TokenDefinition { readonly [TOKEN_BRAND]: true; /** Token name */ readonly _name: string; /** Type marker for inference */ readonly _type: "token"; } /** * Define a static token * * @param name - The token name (must be valid identifier) * @returns A token definition that can be referenced in datasources and pipes * * @example * ```ts * import { defineToken } from '@tinybirdco/sdk'; * * export const appToken = defineToken('app_read'); * * // Use in datasource * const events = defineDatasource('events', { * schema: { id: t.string() }, * tokens: [{ token: appToken, scope: 'READ' }], * }); * ``` */ export declare function defineToken(name: string): TokenDefinition; /** * Check if a value is a token definition */ export declare function isTokenDefinition(value: unknown): value is TokenDefinition; export {}; //# sourceMappingURL=token.d.ts.map