packages/react-components/react-persona/library/etc/react-persona.api.md
Do not edit this file. It is a report generated by API Extractor.
import { Avatar } from '@fluentui/react-avatar';
import type { ComponentProps } from '@fluentui/react-utilities';
import type { ComponentState } from '@fluentui/react-utilities';
import type { ForwardRefComponent } from '@fluentui/react-utilities';
import type { JSXElement } from '@fluentui/react-utilities';
import { PresenceBadge } from '@fluentui/react-badge';
import * as React_2 from 'react';
import type { Slot } from '@fluentui/react-utilities';
import type { SlotClassNames } from '@fluentui/react-utilities';
// @public
export const Persona: ForwardRefComponent<PersonaProps>;
// @public (undocumented)
export const personaClassNames: SlotClassNames<PersonaSlots>;
// @public
export type PersonaProps = ComponentProps<PersonaSlots> & {
name?: string;
presenceOnly?: boolean;
size?: 'extra-small' | 'small' | 'medium' | 'large' | 'extra-large' | 'huge';
textPosition?: 'after' | 'before' | 'below';
textAlignment?: 'center' | 'start';
};
// @public (undocumented)
export type PersonaSlots = {
root: NonNullable<Slot<'div'>>;
avatar?: Slot<typeof Avatar>;
presence?: Slot<typeof PresenceBadge>;
primaryText?: Slot<'span'>;
secondaryText?: Slot<'span'>;
tertiaryText?: Slot<'span'>;
quaternaryText?: Slot<'span'>;
};
// @public
export type PersonaState = ComponentState<PersonaSlots> & Required<Pick<PersonaProps, 'presenceOnly' | 'size' | 'textAlignment' | 'textPosition'>> & {
numTextLines: number;
};
// @public
export const renderPersona_unstable: (state: PersonaState) => JSXElement;
// @public
export const usePersona_unstable: (props: PersonaProps, ref: React_2.Ref<HTMLElement>) => PersonaState;
// @public
export const usePersonaStyles_unstable: (state: PersonaState) => PersonaState;
// (No @packageDocumentation comment for this package)